diff --git a/CHANGELOG b/CHANGELOG
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,7 @@
+1.5.0
+-----
+* Support Cabal 2.1
+
 1.4.0
 -----
 * Don't ignore the 'base' library anymore
diff --git a/cabal-bounds.cabal b/cabal-bounds.cabal
--- a/cabal-bounds.cabal
+++ b/cabal-bounds.cabal
@@ -1,5 +1,5 @@
 name: cabal-bounds
-version: 1.4.0
+version: 1.5.0
 cabal-version: >=1.9.2
 build-type: Simple
 license: BSD3
@@ -90,13 +90,13 @@
         unordered-containers >=0.2.3.3 && <0.3,
         transformers >=0.3.0.0 && <0.6,
         either >=4.1.1 && <4.5,
-        cabal-lenses >=0.5.0 && <0.6,
-        Cabal >=1.18.0 && <1.25,
+        cabal-lenses >=0.7.0 && <0.8,
+        Cabal >=2.1.0.0 && <2.2,
         filepath >=1.3 && <1.5,
         directory >=1.2 && <1.4,
         aeson >=1.2.3.0 && <1.3,
         lens-aeson >=1.0.2 && <1.1,
-        bytestring >= 0.10.8.2 && <1.0,
+        bytestring >=0.10.8.2 && <1.0,
         text >=1.1.0.1 && <1.3
     cpp-options: -DCABAL
     hs-source-dirs: lib
@@ -112,7 +112,7 @@
         CabalBounds.Types
     ghc-options: -W
 
-executable cabal-bounds
+executable  cabal-bounds
     main-is: Main.hs
     build-depends:
         base >=3 && <5,
@@ -120,7 +120,7 @@
     hs-source-dirs: exe
     ghc-options: -W
 
-test-suite cabal-bounds-tests
+test-suite  cabal-bounds-tests
     type: exitcode-stdio-1.0
     main-is: Main.hs
     build-depends:
diff --git a/lib/CabalBounds/Dependencies.hs b/lib/CabalBounds/Dependencies.hs
--- a/lib/CabalBounds/Dependencies.hs
+++ b/lib/CabalBounds/Dependencies.hs
@@ -13,7 +13,7 @@
 import qualified CabalBounds.Args as A
 import qualified CabalLenses as CL
 import CabalBounds.Types
-import Distribution.Package (Dependency(..), PackageName(..))
+import Distribution.Package (Dependency(..), unPackageName)
 import Distribution.PackageDescription (GenericPackageDescription)
 
 -- | Which dependencies in the cabal file should the considered.
@@ -40,10 +40,10 @@
    filtered (const True)
 
 filterDependency (OnlyDependencies deps) =
-   filtered (\(Dependency (PackageName pkgName) _) -> pkgName `elem` deps)
+   filtered (\(Dependency pkg _) -> (unPackageName pkg) `elem` deps)
 
 filterDependency (IgnoreDependencies deps) =
-   filtered (\(Dependency (PackageName pkgName) _) -> pkgName `notElem` deps)
+   filtered (\(Dependency pkg _) -> (unPackageName pkg) `notElem` deps)
 
 
 -- | A traversal for all 'Dependency' of all 'Section'.
diff --git a/lib/CabalBounds/HaskellPlatform.hs b/lib/CabalBounds/HaskellPlatform.hs
--- a/lib/CabalBounds/HaskellPlatform.hs
+++ b/lib/CabalBounds/HaskellPlatform.hs
@@ -503,4 +503,4 @@
 type VersionBranch = [Int]
 
 lib :: LibName -> VersionBranch -> Library
-lib libName branch = (libName, V.Version { V.versionBranch = branch , V.versionTags = [] })
+lib libName branch = (libName, V.mkVersion branch)
diff --git a/lib/CabalBounds/Main.hs b/lib/CabalBounds/Main.hs
--- a/lib/CabalBounds/Main.hs
+++ b/lib/CabalBounds/Main.hs
@@ -5,7 +5,7 @@
    ) where
 
 import Distribution.PackageDescription (GenericPackageDescription)
-import Distribution.PackageDescription.Parse (parsePackageDescription, ParseResult(..))
+import Distribution.PackageDescription.Parse (parseGenericPackageDescription, ParseResult(..))
 import qualified Distribution.PackageDescription.PrettyPrint as PP
 import Distribution.Simple.Configure (tryGetConfigStateFile)
 import Distribution.Simple.LocalBuildInfo (LocalBuildInfo)
@@ -132,7 +132,7 @@
 packageDescription :: FilePath -> EitherT Error IO GenericPackageDescription
 packageDescription file = do
    contents <- liftIO $ SIO.readFile file
-   case parsePackageDescription contents of
+   case parseGenericPackageDescription contents of
         ParseFailed error   -> left $ show error
         ParseOk _ pkgDescrp -> right pkgDescrp
 
@@ -173,7 +173,7 @@
    where
       libsFrom contents
          | [(libs, _)] <- reads contents :: [([(String, [Int])], String)]
-         = right $ HM.fromList (map (\(pkgName, versBranch) -> (pkgName, V.Version versBranch [])) libs)
+         = right $ HM.fromList (map (\(pkgName, versBranch) -> (pkgName, V.mkVersion versBranch)) libs)
 
          | otherwise
          = left "Invalid format of library file given to '--fromfile'. Expected file with content of type '[(String, [Int])]'."
@@ -197,7 +197,7 @@
    where
       buildInfoLibs :: LocalBuildInfo -> LibraryMap
       buildInfoLibs = HM.fromList
-                    . map (\(P.PackageName n, v) -> (n, newestVersion v))
+                    . map (\(pkg, v) -> (P.unPackageName pkg, newestVersion v))
                     . filter ((not . null) . snd)
                     . PX.allPackagesByName . BI.installedPkgs
 
@@ -232,7 +232,7 @@
       parseVersion text =
          case catMaybes $ map (readMaybe . T.unpack) $ T.split (== '.') text of
               []   -> Nothing
-              nums -> Just $ V.Version { V.versionBranch = nums, V.versionTags = [] }
+              nums -> Just $ V.mkVersion nums
 
       stripSuffix :: Text -> Text -> Text
       stripSuffix suffix text = fromMaybe text (T.stripSuffix suffix text)
diff --git a/lib/CabalBounds/Update.hs b/lib/CabalBounds/Update.hs
--- a/lib/CabalBounds/Update.hs
+++ b/lib/CabalBounds/Update.hs
@@ -44,7 +44,7 @@
             let newLowerVersion = comp `compOf` lowerVersion
                 newLowerBound   = V.LowerBound newLowerVersion V.InclusiveBound
                 newIntervals    = (versionRange_ ^. CL.intervals) & _head . CL.lowerBound %~ updateIf (>) newLowerBound
-                vrange          = fromMaybe (V.orLaterVersion newLowerVersion) (mkVersionRange newIntervals)
+                vrange          = mkVersionRange newIntervals
             return $ dep & CL.versionRange .~ vrange
    where
       pkgName_      = dep ^. CL.packageName . _Wrapped
@@ -70,7 +70,7 @@
             let newUpperVersion = nextVersion comp upperVersion
                 newUpperBound   = V.UpperBound newUpperVersion V.ExclusiveBound
                 newIntervals    = (versionRange_ ^. CL.intervals) & _last . CL.upperBound %~ updateIf (<) newUpperBound
-                vrange          = fromMaybe (V.earlierVersion newUpperVersion) (mkVersionRange newIntervals)
+                vrange          = mkVersionRange newIntervals
             return $ dep & CL.versionRange .~ vrange
    where
       versionRange_ = dep ^. CL.versionRange
@@ -95,14 +95,12 @@
 compOf :: VersionComp -> V.Version -> V.Version
 Major1 `compOf` version =
    version & CL.versionBranchL %~ take 1
-           & CL.versionTagsL   .~ []
 
 Major2 `compOf` version =
    version & CL.versionBranchL %~ take 2
-           & CL.versionTagsL   .~ []
 
 Minor `compOf` version =
-   version & CL.versionTagsL .~ []
+   version
 
 
 nextVersion :: VersionComp -> V.Version -> V.Version
@@ -125,5 +123,6 @@
       numNeededVersionDigits Minor  = 3
 
 
-mkVersionRange :: [V.VersionInterval] -> Maybe V.VersionRange
-mkVersionRange vis = V.fromVersionIntervals <$> V.mkVersionIntervals vis
+mkVersionRange :: [V.VersionInterval] -> V.VersionRange
+mkVersionRange []  = V.anyVersion
+mkVersionRange vis = V.fromVersionIntervals . V.mkVersionIntervals $ vis
diff --git a/tests/goldenFiles/DropBothIgnoreA.cabal b/tests/goldenFiles/DropBothIgnoreA.cabal
--- a/tests/goldenFiles/DropBothIgnoreA.cabal
+++ b/tests/goldenFiles/DropBothIgnoreA.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.2,
-        B -any,
-        C -any,
-        D -any
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
-
-executable cabal-bounds
-    main-is: ExeMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B -any,
         C -any,
         D -any
+
+executable cabal-bounds
+    main-is: ExeMain1.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B -any,
         C -any,
         D -any
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B -any,
         C -any,
         D -any
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B -any,
         C -any,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.2,
+        B -any,
+        C -any,
+        D -any
diff --git a/tests/goldenFiles/DropBothOfAll.cabal b/tests/goldenFiles/DropBothOfAll.cabal
--- a/tests/goldenFiles/DropBothOfAll.cabal
+++ b/tests/goldenFiles/DropBothOfAll.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
-    build-depends:
-        base >=3,
-        A -any,
-        B -any,
-        C -any,
-        D -any
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
-
-executable cabal-bounds
-    main-is: ExeMain1.hs
     build-depends:
         base >=3,
         A -any,
         B -any,
         C -any,
         D -any
+
+executable cabal-bounds
+    main-is: ExeMain1.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A -any,
         B -any,
         C -any,
         D -any
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A -any,
         B -any,
         C -any,
         D -any
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A -any,
         B -any,
         C -any,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A -any,
+        B -any,
+        C -any,
+        D -any
diff --git a/tests/goldenFiles/DropBothOfAllExes.cabal b/tests/goldenFiles/DropBothOfAllExes.cabal
--- a/tests/goldenFiles/DropBothOfAllExes.cabal
+++ b/tests/goldenFiles/DropBothOfAllExes.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A -any,
-        B -any,
-        C -any,
-        D -any
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A -any,
         B -any,
         C -any,
         D -any
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A -any,
+        B -any,
+        C -any,
+        D -any
 
 test-suite some-test
     type: exitcode-stdio-1.0
     main-is: TestMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.2,
-        B >=0.2 && <0.3,
-        C >=0.3 && <0.4,
-        D -any
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D <1.0
+        D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.2,
+        B >=0.2 && <0.3,
+        C >=0.3 && <0.4,
+        D <1.0
diff --git a/tests/goldenFiles/DropBothOfExe.cabal b/tests/goldenFiles/DropBothOfExe.cabal
--- a/tests/goldenFiles/DropBothOfExe.cabal
+++ b/tests/goldenFiles/DropBothOfExe.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A -any,
         B -any,
         C -any,
         D -any
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
diff --git a/tests/goldenFiles/DropBothOfLib.cabal b/tests/goldenFiles/DropBothOfLib.cabal
--- a/tests/goldenFiles/DropBothOfLib.cabal
+++ b/tests/goldenFiles/DropBothOfLib.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A -any,
         B -any,
         C -any,
         D -any
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.2,
-        B >=0.2 && <0.3,
-        C >=0.3 && <0.4,
-        D <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D -any
+        D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D <1.0
+        D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.2,
+        B >=0.2 && <0.3,
+        C >=0.3 && <0.4,
+        D <1.0
diff --git a/tests/goldenFiles/DropBothOfOtherExe.cabal b/tests/goldenFiles/DropBothOfOtherExe.cabal
--- a/tests/goldenFiles/DropBothOfOtherExe.cabal
+++ b/tests/goldenFiles/DropBothOfOtherExe.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A -any,
         B -any,
         C -any,
         D -any
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
diff --git a/tests/goldenFiles/DropBothOfTest.cabal b/tests/goldenFiles/DropBothOfTest.cabal
--- a/tests/goldenFiles/DropBothOfTest.cabal
+++ b/tests/goldenFiles/DropBothOfTest.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A -any,
         B -any,
         C -any,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
diff --git a/tests/goldenFiles/DropBothOnlyBase.cabal b/tests/goldenFiles/DropBothOnlyBase.cabal
--- a/tests/goldenFiles/DropBothOnlyBase.cabal
+++ b/tests/goldenFiles/DropBothOnlyBase.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base -any,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base -any,
-        A >=0.1 && <0.2,
-        B >=0.2 && <0.3,
-        C >=0.3 && <0.4,
-        D <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base -any,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D -any
+        D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base -any,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base -any,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D <1.0
+        D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base -any,
+        A >=0.1 && <0.2,
+        B >=0.2 && <0.3,
+        C >=0.3 && <0.4,
+        D <1.0
diff --git a/tests/goldenFiles/DropUpperIgnoreA.cabal b/tests/goldenFiles/DropUpperIgnoreA.cabal
--- a/tests/goldenFiles/DropUpperIgnoreA.cabal
+++ b/tests/goldenFiles/DropUpperIgnoreA.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2,
         C >=0.3,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.2,
-        B >=0.2,
-        C >=0.3,
-        D -any
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2,
         C >=0.3,
         D -any
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2,
         C >=0.3,
         D -any
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2,
         C >=0.3,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.2,
+        B >=0.2,
+        C >=0.3,
+        D -any
diff --git a/tests/goldenFiles/DropUpperOfAll.cabal b/tests/goldenFiles/DropUpperOfAll.cabal
--- a/tests/goldenFiles/DropUpperOfAll.cabal
+++ b/tests/goldenFiles/DropUpperOfAll.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1,
         B >=0.2,
         C >=0.3,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1,
-        B >=0.2,
-        C >=0.3,
-        D -any
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1,
         B >=0.2,
         C >=0.3,
         D -any
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1,
         B >=0.2,
         C >=0.3,
         D -any
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1,
         B >=0.2,
         C >=0.3,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1,
+        B >=0.2,
+        C >=0.3,
+        D -any
diff --git a/tests/goldenFiles/DropUpperOfAllExes.cabal b/tests/goldenFiles/DropUpperOfAllExes.cabal
--- a/tests/goldenFiles/DropUpperOfAllExes.cabal
+++ b/tests/goldenFiles/DropUpperOfAllExes.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1,
-        B >=0.2,
-        C >=0.3,
-        D -any
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1,
         B >=0.2,
         C >=0.3,
         D -any
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1,
+        B >=0.2,
+        C >=0.3,
+        D -any
 
 test-suite some-test
     type: exitcode-stdio-1.0
     main-is: TestMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.2,
-        B >=0.2 && <0.3,
-        C >=0.3 && <0.4,
-        D -any
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D <1.0
+        D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.2,
+        B >=0.2 && <0.3,
+        C >=0.3 && <0.4,
+        D <1.0
diff --git a/tests/goldenFiles/DropUpperOfExe.cabal b/tests/goldenFiles/DropUpperOfExe.cabal
--- a/tests/goldenFiles/DropUpperOfExe.cabal
+++ b/tests/goldenFiles/DropUpperOfExe.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A >=0.1,
         B >=0.2,
         C >=0.3,
         D -any
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
diff --git a/tests/goldenFiles/DropUpperOfLib.cabal b/tests/goldenFiles/DropUpperOfLib.cabal
--- a/tests/goldenFiles/DropUpperOfLib.cabal
+++ b/tests/goldenFiles/DropUpperOfLib.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1,
         B >=0.2,
         C >=0.3,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.2,
-        B >=0.2 && <0.3,
-        C >=0.3 && <0.4,
-        D <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D -any
+        D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D <1.0
+        D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.2,
+        B >=0.2 && <0.3,
+        C >=0.3 && <0.4,
+        D <1.0
diff --git a/tests/goldenFiles/DropUpperOfOtherExe.cabal b/tests/goldenFiles/DropUpperOfOtherExe.cabal
--- a/tests/goldenFiles/DropUpperOfOtherExe.cabal
+++ b/tests/goldenFiles/DropUpperOfOtherExe.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1,
         B >=0.2,
         C >=0.3,
         D -any
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
diff --git a/tests/goldenFiles/DropUpperOfTest.cabal b/tests/goldenFiles/DropUpperOfTest.cabal
--- a/tests/goldenFiles/DropUpperOfTest.cabal
+++ b/tests/goldenFiles/DropUpperOfTest.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1,
         B >=0.2,
         C >=0.3,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
diff --git a/tests/goldenFiles/DropUpperOnlyBase.cabal b/tests/goldenFiles/DropUpperOnlyBase.cabal
--- a/tests/goldenFiles/DropUpperOnlyBase.cabal
+++ b/tests/goldenFiles/DropUpperOnlyBase.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.2,
-        B >=0.2 && <0.3,
-        C >=0.3 && <0.4,
-        D <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D -any
+        D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D <1.0
+        D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.2,
+        B >=0.2 && <0.3,
+        C >=0.3 && <0.4,
+        D <1.0
diff --git a/tests/goldenFiles/UpdateBothIgnoreA.cabal b/tests/goldenFiles/UpdateBothIgnoreA.cabal
--- a/tests/goldenFiles/UpdateBothIgnoreA.cabal
+++ b/tests/goldenFiles/UpdateBothIgnoreA.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.4,
         C >=0.2.5 && <0.4,
         D >=0.7 && <0.9
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.2,
-        B >=0.2 && <0.4,
-        C >=0.2.5 && <0.4,
-        D >=0.8.2 && <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.4,
         C >=0.2.5 && <0.4,
         D >=0.8.2 && <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.4,
         C >=0.2.5 && <0.4,
         D >=0.8.2 && <0.9
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.4,
         C >=0.2.5 && <0.4,
-        D >=0.8.2 && <1.0
+        D >=0.8.2 && <0.9
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.2,
+        B >=0.2 && <0.4,
+        C >=0.2.5 && <0.4,
+        D >=0.8.2 && <1.0
diff --git a/tests/goldenFiles/UpdateBothOfAll.cabal b/tests/goldenFiles/UpdateBothOfAll.cabal
--- a/tests/goldenFiles/UpdateBothOfAll.cabal
+++ b/tests/goldenFiles/UpdateBothOfAll.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C >=0.2.5 && <0.4,
         D >=0.7 && <0.9
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.4,
-        B >=0.2 && <0.4,
-        C >=0.2.5 && <0.4,
-        D >=0.8.2 && <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C >=0.2.5 && <0.4,
         D >=0.8.2 && <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C >=0.2.5 && <0.4,
         D >=0.8.2 && <0.9
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C >=0.2.5 && <0.4,
-        D >=0.8.2 && <1.0
+        D >=0.8.2 && <0.9
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.4,
+        B >=0.2 && <0.4,
+        C >=0.2.5 && <0.4,
+        D >=0.8.2 && <1.0
diff --git a/tests/goldenFiles/UpdateBothOfAllExes.cabal b/tests/goldenFiles/UpdateBothOfAllExes.cabal
--- a/tests/goldenFiles/UpdateBothOfAllExes.cabal
+++ b/tests/goldenFiles/UpdateBothOfAllExes.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.4,
-        B >=0.2 && <0.4,
-        C >=0.2.5 && <0.4,
-        D >=0.8.2 && <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C >=0.2.5 && <0.4,
         D >=0.8.2 && <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.4,
+        B >=0.2 && <0.4,
+        C >=0.2.5 && <0.4,
+        D >=0.8.2 && <0.9
 
 test-suite some-test
     type: exitcode-stdio-1.0
     main-is: TestMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.2,
-        B >=0.2 && <0.3,
-        C >=0.3 && <0.4,
-        D -any
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D <1.0
+        D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.2,
+        B >=0.2 && <0.3,
+        C >=0.3 && <0.4,
+        D <1.0
diff --git a/tests/goldenFiles/UpdateBothOfExe.cabal b/tests/goldenFiles/UpdateBothOfExe.cabal
--- a/tests/goldenFiles/UpdateBothOfExe.cabal
+++ b/tests/goldenFiles/UpdateBothOfExe.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C >=0.2.5 && <0.4,
         D >=0.8.2 && <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
diff --git a/tests/goldenFiles/UpdateBothOfLibrary.cabal b/tests/goldenFiles/UpdateBothOfLibrary.cabal
--- a/tests/goldenFiles/UpdateBothOfLibrary.cabal
+++ b/tests/goldenFiles/UpdateBothOfLibrary.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C >=0.2.5 && <0.4,
         D >=0.7 && <0.9
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.2,
-        B >=0.2 && <0.3,
-        C >=0.3 && <0.4,
-        D <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D -any
+        D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D <1.0
+        D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.2,
+        B >=0.2 && <0.3,
+        C >=0.3 && <0.4,
+        D <1.0
diff --git a/tests/goldenFiles/UpdateBothOfOtherExe.cabal b/tests/goldenFiles/UpdateBothOfOtherExe.cabal
--- a/tests/goldenFiles/UpdateBothOfOtherExe.cabal
+++ b/tests/goldenFiles/UpdateBothOfOtherExe.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C >=0.2.5 && <0.4,
         D >=0.8.2 && <0.9
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
diff --git a/tests/goldenFiles/UpdateBothOfTest.cabal b/tests/goldenFiles/UpdateBothOfTest.cabal
--- a/tests/goldenFiles/UpdateBothOfTest.cabal
+++ b/tests/goldenFiles/UpdateBothOfTest.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C >=0.2.5 && <0.4,
         D >=0.8.2 && <0.9
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
diff --git a/tests/goldenFiles/UpdateByHaskellPlatform.cabal b/tests/goldenFiles/UpdateByHaskellPlatform.cabal
--- a/tests/goldenFiles/UpdateByHaskellPlatform.cabal
+++ b/tests/goldenFiles/UpdateByHaskellPlatform.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,23 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.1 && <0.4,
         directory >=1.0 && <1.3
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.2,
-        B >=0.2 && <0.3,
-        C >=0.1 && <0.4
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -38,14 +34,15 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.1 && <0.4
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -55,15 +52,15 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.1 && <0.4
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -72,14 +69,15 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.1 && <0.4
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -88,3 +86,8 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.2,
+        B >=0.2 && <0.3,
+        C >=0.1 && <0.4
diff --git a/tests/goldenFiles/UpdateLowerOfAll.cabal b/tests/goldenFiles/UpdateLowerOfAll.cabal
--- a/tests/goldenFiles/UpdateLowerOfAll.cabal
+++ b/tests/goldenFiles/UpdateLowerOfAll.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2.5 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A ==0.1.*,
-        B ==0.2.*,
-        C >=0.2.5 && <0.4,
-        D >=0.8.2 && <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2.5 && <0.4,
-        D >=0.8.2
+        D >=0.8.2 && <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2.5 && <0.4,
         D >=0.8.2
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2.5 && <0.4,
-        D >=0.8.2 && <1.0
+        D >=0.8.2
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A ==0.1.*,
+        B ==0.2.*,
+        C >=0.2.5 && <0.4,
+        D >=0.8.2 && <1.0
diff --git a/tests/goldenFiles/UpdateLowerOfAllExes.cabal b/tests/goldenFiles/UpdateLowerOfAllExes.cabal
--- a/tests/goldenFiles/UpdateLowerOfAllExes.cabal
+++ b/tests/goldenFiles/UpdateLowerOfAllExes.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2.5 && <0.4,
         D >=0.8.2 && <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2.5 && <0.4,
         D >=0.8.2
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
diff --git a/tests/goldenFiles/UpdateLowerOfExe.cabal b/tests/goldenFiles/UpdateLowerOfExe.cabal
--- a/tests/goldenFiles/UpdateLowerOfExe.cabal
+++ b/tests/goldenFiles/UpdateLowerOfExe.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2.5 && <0.4,
         D >=0.8.2 && <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
diff --git a/tests/goldenFiles/UpdateLowerOfLibrary.cabal b/tests/goldenFiles/UpdateLowerOfLibrary.cabal
--- a/tests/goldenFiles/UpdateLowerOfLibrary.cabal
+++ b/tests/goldenFiles/UpdateLowerOfLibrary.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2.5 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.2,
-        B >=0.2 && <0.3,
-        C >=0.3 && <0.4,
-        D <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D -any
+        D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D <1.0
+        D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.2,
+        B >=0.2 && <0.3,
+        C >=0.3 && <0.4,
+        D <1.0
diff --git a/tests/goldenFiles/UpdateLowerOfOtherExe.cabal b/tests/goldenFiles/UpdateLowerOfOtherExe.cabal
--- a/tests/goldenFiles/UpdateLowerOfOtherExe.cabal
+++ b/tests/goldenFiles/UpdateLowerOfOtherExe.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2.5 && <0.4,
         D >=0.8.2
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
diff --git a/tests/goldenFiles/UpdateLowerOfTest.cabal b/tests/goldenFiles/UpdateLowerOfTest.cabal
--- a/tests/goldenFiles/UpdateLowerOfTest.cabal
+++ b/tests/goldenFiles/UpdateLowerOfTest.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2.5 && <0.4,
         D >=0.8.2
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
diff --git a/tests/goldenFiles/UpdateMajor1Lower.cabal b/tests/goldenFiles/UpdateMajor1Lower.cabal
--- a/tests/goldenFiles/UpdateMajor1Lower.cabal
+++ b/tests/goldenFiles/UpdateMajor1Lower.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A <0.2,
         B <0.3,
         C <0.4,
         D -any
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A <0.2,
-        B <0.3,
-        C <0.4,
-        D <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A <0.2,
         B <0.3,
         C <0.4,
-        D -any
+        D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A <0.2,
         B <0.3,
         C <0.4,
         D -any
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A <0.2,
         B <0.3,
         C <0.4,
-        D <1.0
+        D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A <0.2,
+        B <0.3,
+        C <0.4,
+        D <1.0
diff --git a/tests/goldenFiles/UpdateMajor1LowerAndUpper.cabal b/tests/goldenFiles/UpdateMajor1LowerAndUpper.cabal
--- a/tests/goldenFiles/UpdateMajor1LowerAndUpper.cabal
+++ b/tests/goldenFiles/UpdateMajor1LowerAndUpper.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
-    build-depends:
-        base >=3,
-        A ==0.*,
-        B ==0.*,
-        C ==0.*,
-        D ==0.*
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
-
-executable cabal-bounds
-    main-is: ExeMain1.hs
     build-depends:
         base >=3,
         A ==0.*,
         B ==0.*,
         C ==0.*,
         D ==0.*
+
+executable cabal-bounds
+    main-is: ExeMain1.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A ==0.*,
         B ==0.*,
         C ==0.*,
         D ==0.*
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A ==0.*,
         B ==0.*,
         C ==0.*,
         D ==0.*
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A ==0.*,
         B ==0.*,
         C ==0.*,
-        D <1.0
+        D ==0.*
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A ==0.*,
+        B ==0.*,
+        C ==0.*,
+        D <1.0
diff --git a/tests/goldenFiles/UpdateMajor1Upper.cabal b/tests/goldenFiles/UpdateMajor1Upper.cabal
--- a/tests/goldenFiles/UpdateMajor1Upper.cabal
+++ b/tests/goldenFiles/UpdateMajor1Upper.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <1,
         B >=0.2 && <1,
         C >=0.3 && <1,
         D >=0.7 && <1
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <1,
-        B >=0.2 && <1,
-        C >=0.3 && <1,
-        D ==0.*
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <1,
         B >=0.2 && <1,
         C >=0.3 && <1,
         D ==0.*
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <1,
         B >=0.2 && <1,
         C >=0.3 && <1,
         D ==0.*
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <1,
         B >=0.2 && <1,
         C >=0.3 && <1,
-        D <1.0
+        D ==0.*
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <1,
+        B >=0.2 && <1,
+        C >=0.3 && <1,
+        D <1.0
diff --git a/tests/goldenFiles/UpdateMajor2Lower.cabal b/tests/goldenFiles/UpdateMajor2Lower.cabal
--- a/tests/goldenFiles/UpdateMajor2Lower.cabal
+++ b/tests/goldenFiles/UpdateMajor2Lower.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A ==0.1.*,
-        B ==0.2.*,
-        C >=0.2 && <0.4,
-        D ==0.8.*
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2 && <0.4,
-        D >=0.8
+        D ==0.8.*
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2 && <0.4,
         D >=0.8
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2 && <0.4,
-        D >=0.8 && <1.0
+        D >=0.8
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A ==0.1.*,
+        B ==0.2.*,
+        C >=0.2 && <0.4,
+        D >=0.8 && <1.0
diff --git a/tests/goldenFiles/UpdateMajor2Upper.cabal b/tests/goldenFiles/UpdateMajor2Upper.cabal
--- a/tests/goldenFiles/UpdateMajor2Upper.cabal
+++ b/tests/goldenFiles/UpdateMajor2Upper.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C ==0.3.*,
         D >=0.7 && <0.9
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.4,
-        B >=0.2 && <0.4,
-        C ==0.3.*,
-        D <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C ==0.3.*,
         D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C ==0.3.*,
         D <0.9
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C ==0.3.*,
-        D <1.0
+        D <0.9
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.4,
+        B >=0.2 && <0.4,
+        C ==0.3.*,
+        D <1.0
diff --git a/tests/goldenFiles/UpdateMinorLower.cabal b/tests/goldenFiles/UpdateMinorLower.cabal
--- a/tests/goldenFiles/UpdateMinorLower.cabal
+++ b/tests/goldenFiles/UpdateMinorLower.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2.5 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A ==0.1.*,
-        B ==0.2.*,
-        C >=0.2.5 && <0.4,
-        D >=0.8.2 && <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2.5 && <0.4,
-        D >=0.8.2
+        D >=0.8.2 && <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2.5 && <0.4,
         D >=0.8.2
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A ==0.1.*,
         B ==0.2.*,
         C >=0.2.5 && <0.4,
-        D >=0.8.2 && <1.0
+        D >=0.8.2
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A ==0.1.*,
+        B ==0.2.*,
+        C >=0.2.5 && <0.4,
+        D >=0.8.2 && <1.0
diff --git a/tests/goldenFiles/UpdateMinorLowerAndUpper.cabal b/tests/goldenFiles/UpdateMinorLowerAndUpper.cabal
--- a/tests/goldenFiles/UpdateMinorLowerAndUpper.cabal
+++ b/tests/goldenFiles/UpdateMinorLowerAndUpper.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.3.1,
         B >=0.2 && <0.3.0.2,
         C >=0.2.5 && <0.4,
         D >=0.7 && <0.8.3
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.3.1,
-        B >=0.2 && <0.3.0.2,
-        C >=0.2.5 && <0.4,
-        D >=0.8.2 && <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.3.1,
         B >=0.2 && <0.3.0.2,
         C >=0.2.5 && <0.4,
-        D ==0.8.2.*
+        D >=0.8.2 && <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.3.1,
         B >=0.2 && <0.3.0.2,
         C >=0.2.5 && <0.4,
         D ==0.8.2.*
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.3.1,
         B >=0.2 && <0.3.0.2,
         C >=0.2.5 && <0.4,
-        D >=0.8.2 && <1.0
+        D ==0.8.2.*
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.3.1,
+        B >=0.2 && <0.3.0.2,
+        C >=0.2.5 && <0.4,
+        D >=0.8.2 && <1.0
diff --git a/tests/goldenFiles/UpdateMinorUpper.cabal b/tests/goldenFiles/UpdateMinorUpper.cabal
--- a/tests/goldenFiles/UpdateMinorUpper.cabal
+++ b/tests/goldenFiles/UpdateMinorUpper.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.3.1,
         B >=0.2 && <0.3.0.2,
         C ==0.3.*,
         D >=0.7 && <0.8.3
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.3.1,
-        B >=0.2 && <0.3.0.2,
-        C ==0.3.*,
-        D <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.3.1,
         B >=0.2 && <0.3.0.2,
         C ==0.3.*,
-        D <0.8.3
+        D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.3.1,
         B >=0.2 && <0.3.0.2,
         C ==0.3.*,
         D <0.8.3
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.3.1,
         B >=0.2 && <0.3.0.2,
         C ==0.3.*,
-        D <1.0
+        D <0.8.3
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.3.1,
+        B >=0.2 && <0.3.0.2,
+        C ==0.3.*,
+        D <1.0
diff --git a/tests/goldenFiles/UpdateOnlyMissing.cabal b/tests/goldenFiles/UpdateOnlyMissing.cabal
--- a/tests/goldenFiles/UpdateOnlyMissing.cabal
+++ b/tests/goldenFiles/UpdateOnlyMissing.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,22 +12,18 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.2.5 && <0.3
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.2,
-        B >=0.2 && <0.3,
-        C >=0.1 && <0.4
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -37,14 +33,15 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.1 && <0.4
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -54,15 +51,15 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.1 && <0.4
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -71,14 +68,15 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.1 && <0.4
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -87,3 +85,8 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.2,
+        B >=0.2 && <0.3,
+        C >=0.1 && <0.4
diff --git a/tests/goldenFiles/UpdateUpperFromFile.cabal b/tests/goldenFiles/UpdateUpperFromFile.cabal
--- a/tests/goldenFiles/UpdateUpperFromFile.cabal
+++ b/tests/goldenFiles/UpdateUpperFromFile.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <2.3,
         B >=0.2 && <0.3,
         C >=0.3 && <0.6,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <2.3,
-        B >=0.2 && <0.3,
-        C >=0.3 && <0.6,
-        D <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <2.3,
         B >=0.2 && <0.3,
         C >=0.3 && <0.6,
-        D -any
+        D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <2.3,
         B >=0.2 && <0.3,
         C >=0.3 && <0.6,
         D -any
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <2.3,
         B >=0.2 && <0.3,
         C >=0.3 && <0.6,
-        D <1.0
+        D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <2.3,
+        B >=0.2 && <0.3,
+        C >=0.3 && <0.6,
+        D <1.0
diff --git a/tests/goldenFiles/UpdateUpperOfAll.cabal b/tests/goldenFiles/UpdateUpperOfAll.cabal
--- a/tests/goldenFiles/UpdateUpperOfAll.cabal
+++ b/tests/goldenFiles/UpdateUpperOfAll.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C ==0.3.*,
         D >=0.7 && <0.9
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.4,
-        B >=0.2 && <0.4,
-        C ==0.3.*,
-        D <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C ==0.3.*,
         D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C ==0.3.*,
         D <0.9
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C ==0.3.*,
-        D <1.0
+        D <0.9
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.4,
+        B >=0.2 && <0.4,
+        C ==0.3.*,
+        D <1.0
diff --git a/tests/goldenFiles/UpdateUpperOfAllExes.cabal b/tests/goldenFiles/UpdateUpperOfAllExes.cabal
--- a/tests/goldenFiles/UpdateUpperOfAllExes.cabal
+++ b/tests/goldenFiles/UpdateUpperOfAllExes.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.4,
-        B >=0.2 && <0.4,
-        C ==0.3.*,
-        D <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C ==0.3.*,
         D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.4,
+        B >=0.2 && <0.4,
+        C ==0.3.*,
+        D <0.9
 
 test-suite some-test
     type: exitcode-stdio-1.0
     main-is: TestMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.2,
-        B >=0.2 && <0.3,
-        C >=0.3 && <0.4,
-        D -any
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D <1.0
+        D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.2,
+        B >=0.2 && <0.3,
+        C >=0.3 && <0.4,
+        D <1.0
diff --git a/tests/goldenFiles/UpdateUpperOfExe.cabal b/tests/goldenFiles/UpdateUpperOfExe.cabal
--- a/tests/goldenFiles/UpdateUpperOfExe.cabal
+++ b/tests/goldenFiles/UpdateUpperOfExe.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C ==0.3.*,
         D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
diff --git a/tests/goldenFiles/UpdateUpperOfLibrary.cabal b/tests/goldenFiles/UpdateUpperOfLibrary.cabal
--- a/tests/goldenFiles/UpdateUpperOfLibrary.cabal
+++ b/tests/goldenFiles/UpdateUpperOfLibrary.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,19 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C ==0.3.*,
         D >=0.7 && <0.9
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
-    build-depends:
-        base >=3,
-        A >=0.1 && <0.2,
-        B >=0.2 && <0.3,
-        C >=0.3 && <0.4,
-        D <0.9
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,15 +34,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D -any
+        D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -57,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,15 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
-        D <1.0
+        D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -92,3 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
+    build-depends:
+        base >=3,
+        A >=0.1 && <0.2,
+        B >=0.2 && <0.3,
+        C >=0.3 && <0.4,
+        D <1.0
diff --git a/tests/goldenFiles/UpdateUpperOfOtherExe.cabal b/tests/goldenFiles/UpdateUpperOfOtherExe.cabal
--- a/tests/goldenFiles/UpdateUpperOfOtherExe.cabal
+++ b/tests/goldenFiles/UpdateUpperOfOtherExe.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C ==0.3.*,
         D <0.9
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
diff --git a/tests/goldenFiles/UpdateUpperOfTest.cabal b/tests/goldenFiles/UpdateUpperOfTest.cabal
--- a/tests/goldenFiles/UpdateUpperOfTest.cabal
+++ b/tests/goldenFiles/UpdateUpperOfTest.cabal
@@ -1,10 +1,10 @@
 name: setup-config
 version: 0.1
-cabal-version: >=1.9.2
-build-type: Simple
 license: UnspecifiedLicense
 maintainer: daniel.trstenjak@gmail.com
 author: Daniel Trstenjak
+cabal-version: >=1.9.2
+build-type: Simple
 
 library
     exposed-modules:
@@ -12,24 +12,38 @@
         CabalBounds.Command
         CabalBounds.Execute
         CabalBounds.Lenses
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D >=0.7
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
 
 executable cabal-bounds
     main-is: ExeMain1.hs
+    scope: unknown
+    cpp-options: -DCABAL
+    hs-source-dirs: src
+    other-modules:
+        Paths_setup_config
+        CabalBounds.Args
+        CabalBounds.Command
+        CabalBounds.Execute
+        CabalBounds.Lenses
+    ghc-options: -W
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <0.9
+
+executable other-exe
+    main-is: ExeMain2.hs
+    scope: unknown
     cpp-options: -DCABAL
     hs-source-dirs: src
     other-modules:
@@ -39,16 +53,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-executable other-exe
-    main-is: ExeMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D -any
-    cpp-options: -DCABAL
+
+test-suite some-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain1.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -57,16 +71,16 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-
-test-suite some-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain1.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.4,
         B >=0.2 && <0.4,
         C ==0.3.*,
         D <0.9
+
+test-suite other-test
+    type: exitcode-stdio-1.0
+    main-is: TestMain2.hs
     hs-source-dirs: src
     other-modules:
         Paths_setup_config
@@ -75,20 +89,9 @@
         CabalBounds.Execute
         CabalBounds.Lenses
     ghc-options: -W
-test-suite other-test
-    type: exitcode-stdio-1.0
-    main-is: TestMain2.hs
     build-depends:
         base >=3,
         A >=0.1 && <0.2,
         B >=0.2 && <0.3,
         C >=0.3 && <0.4,
         D <1.0
-    hs-source-dirs: src
-    other-modules:
-        Paths_setup_config
-        CabalBounds.Args
-        CabalBounds.Command
-        CabalBounds.Execute
-        CabalBounds.Lenses
-    ghc-options: -W
