diff --git a/grid.cabal b/grid.cabal
--- a/grid.cabal
+++ b/grid.cabal
@@ -1,67 +1,71 @@
-name:                grid
-version:             7.8.8
-synopsis:            Tools for working with regular grids (graphs, lattices).
-description:         Provides tools for working with regular arrangements
-                     of tiles, such as might be used in a board game or some
-                     other type of grid map. Currently supports triangular,
-                     square, and hexagonal tiles, with various 2D and
-                     toroidal layouts.
-                     The userguide is available at
-                     <https://github.com/mhwombat/grid/wiki>.
-homepage:            https://github.com/mhwombat/grid#readme
-bug-reports:         https://github.com/mhwombat/grid/issues
-license:             BSD3
-license-file:        LICENSE
-author:              Amy de Buitléir
-maintainer:          amy@nualeargais.ie
-copyright:           (c) Amy de Buitléir 2010-2016
-category:            Math
-build-type:          Simple
--- extra-source-files:
-cabal-version:       >=1.10
+name: grid
+version: 7.8.9
+cabal-version: >=1.10
+build-type: Simple
+license: BSD3
+license-file: LICENSE
+copyright: (c) Amy de Buitléir 2010-2016
+maintainer: amy@nualeargais.ie
+homepage: https://github.com/mhwombat/grid#readme
+bug-reports: https://github.com/mhwombat/grid/issues
+synopsis: Tools for working with regular grids (graphs, lattices).
+description:
+    Provides tools for working with regular arrangements
+    of tiles, such as might be used in a board game or some
+    other type of grid map. Currently supports triangular,
+    square, and hexagonal tiles, with various 2D and
+    toroidal layouts.
+    The userguide is available at
+    <https://github.com/mhwombat/grid/wiki>.
+category: Math
+author: Amy de Buitléir
 
+source-repository head
+    type: git
+    location: https://github.com/mhwombat/grid
+
 library
-  hs-source-dirs:      src
-  exposed-modules:     Math.Geometry.Grid,
-                       Math.Geometry.Grid.Triangular,
-                       Math.Geometry.Grid.Square,
-                       Math.Geometry.Grid.Hexagonal,
-                       Math.Geometry.Grid.Hexagonal2,
-                       Math.Geometry.Grid.Octagonal,
-                       Math.Geometry.GridInternal,
-                       Math.Geometry.Grid.TriangularInternal,
-                       Math.Geometry.Grid.SquareInternal,
-                       Math.Geometry.Grid.HexagonalInternal,
-                       Math.Geometry.Grid.HexagonalInternal2,
-                       Math.Geometry.Grid.OctagonalInternal,
-                       Math.Geometry.GridMap,
-                       Math.Geometry.GridMap.Lazy
-  ghc-options:         -Wall
-  build-depends:       base >= 4.7 && < 5,
-                       cereal >=0.4 && <0.6,
-                       containers ==0.5.*
-  default-language:    Haskell2010
+    exposed-modules:
+        Math.Geometry.Grid
+        Math.Geometry.Grid.Triangular
+        Math.Geometry.Grid.Square
+        Math.Geometry.Grid.Hexagonal
+        Math.Geometry.Grid.Hexagonal2
+        Math.Geometry.Grid.Octagonal
+        Math.Geometry.GridInternal
+        Math.Geometry.Grid.TriangularInternal
+        Math.Geometry.Grid.SquareInternal
+        Math.Geometry.Grid.HexagonalInternal
+        Math.Geometry.Grid.HexagonalInternal2
+        Math.Geometry.Grid.OctagonalInternal
+        Math.Geometry.GridMap
+        Math.Geometry.GridMap.Lazy
+    build-depends:
+        base >=4.7 && <5,
+        cereal >=0.4 && <0.6,
+        containers ==0.5.*
+    default-language: Haskell2010
+    hs-source-dirs: src
+    ghc-options: -Wall
 
 test-suite grid-test
-  type:                exitcode-stdio-1.0
-  hs-source-dirs:      test
-  main-is:             TestMain.hs
-  other-modules:       Math.Geometry.GridQC,
-                       Math.Geometry.Grid.Hexagonal2QC,
-                       Math.Geometry.Grid.HexagonalQC,
-                       Math.Geometry.Grid.OctagonalQC,
-                       Math.Geometry.Grid.SquareQC,
-                       Math.Geometry.Grid.TriangularQC
-                       Math.Geometry.GridMap.LazyQC
-  build-depends:       base,
-                       grid,
-                       containers,
-                       test-framework ==0.8.*,
-                       test-framework-quickcheck2 ==0.3.*,
-                       QuickCheck >=2.8 && <2.10
-  ghc-options:         -threaded -rtsopts -with-rtsopts=-N -Wall
-  default-language:    Haskell2010
-
-source-repository head
-  type:     git
-  location: https://github.com/mhwombat/grid
+    type: exitcode-stdio-1.0
+    main-is: TestMain.hs
+    build-depends:
+        base >=4.10.0.0 && <4.11,
+        grid,
+        containers >=0.5.10.2 && <0.6,
+        test-framework ==0.8.*,
+        test-framework-quickcheck2 ==0.3.*,
+        QuickCheck >=2.8 && <2.10
+    default-language: Haskell2010
+    hs-source-dirs: test
+    other-modules:
+        Math.Geometry.GridQC
+        Math.Geometry.Grid.Hexagonal2QC
+        Math.Geometry.Grid.HexagonalQC
+        Math.Geometry.Grid.OctagonalQC
+        Math.Geometry.Grid.SquareQC
+        Math.Geometry.Grid.TriangularQC
+        Math.Geometry.GridMap.LazyQC
+    ghc-options: -threaded -rtsopts -with-rtsopts=-N -Wall
