diff --git a/arbor-monad-metric.cabal b/arbor-monad-metric.cabal
--- a/arbor-monad-metric.cabal
+++ b/arbor-monad-metric.cabal
@@ -1,5 +1,6 @@
+cabal-version:  2.2
 name:           arbor-monad-metric
-version:        1.1.0
+version:        1.1.1
 description:    Please see the README on Github at <https://github.com/arbor/arbor-monad-metric#readme>
 synopsis:       Core metric library for publishing metrics.
 category:       Metrics
@@ -11,7 +12,6 @@
 license:        MIT
 license-file:   LICENSE
 build-type:     Simple
-cabal-version:  >= 1.10
 extra-source-files:
     ChangeLog.md
     README.md
@@ -20,32 +20,65 @@
   type: git
   location: https://github.com/arbor/arbor-monad-metric
 
+common base                 { build-depends: base                 >= 4          && < 5      }
+
+common arbor-datadog        { build-depends: arbor-datadog        >= 0.0.0.1    && < 0.1    }
+common bytestring           { build-depends: bytestring           >= 0.10.8.2   && < 0.11   }
+common containers           { build-depends: containers           >= 0.5.10     && < 0.7    }
+common generic-lens         { build-depends: generic-lens         >= 1.0.0.2    && < 1.2    }
+common hedgehog             { build-depends: hedgehog             >= 0.6.1      && < 0.7    }
+common hspec                { build-depends: hspec                >= 2.6        && < 3      }
+common hw-hspec-hedgehog    { build-depends: hw-hspec-hedgehog    >= 0.1.0.5    && < 0.1.1  }
+common lens                 { build-depends: lens                 >= 4.16       && < 5      }
+common mtl                  { build-depends: mtl                  >= 2.2.2      && < 2.3    }
+common network              { build-depends: network              >= 2          && < 3      }
+common resourcet            { build-depends: resourcet            >= 1.2.1      && < 1.3    }
+common stm                  { build-depends: stm                  >= 2.4.0      && < 2.6    }
+common text                 { build-depends: text                 >= 1.2.3      && < 1.3    }
+common transformers         { build-depends: transformers         >= 0.5.2      && < 0.6    }
+
+common common
+  default-language: Haskell2010
+
 library
+  import:   base, common
+          , containers
+          , generic-lens
+          , lens
+          , mtl
+          , resourcet
+          , stm
+          , text
+          , transformers
   exposed-modules:
       Arbor.Monad.Metric
       Arbor.Monad.Metric.Api.String
       Arbor.Monad.Metric.Api.Text
       Arbor.Monad.Metric.Generic
       Arbor.Monad.Metric.Type
-  other-modules:
-      Paths_arbor_monad_metric
-  hs-source-dirs:
-      src
+  other-modules:      Paths_arbor_monad_metric
+  autogen-modules:    Paths_arbor_monad_metric
+  hs-source-dirs:     src
   default-extensions: BangPatterns FlexibleContexts FlexibleInstances GeneralizedNewtypeDeriving MultiParamTypeClasses OverloadedStrings TupleSections
-  ghc-options: -Wall -Wcompat -Wincomplete-record-updates -Wincomplete-uni-patterns -Wredundant-constraints
-  build-depends:
-      base              >= 4.7        && < 5
-    , containers        >= 0.5.10     && < 0.6
-    , generic-lens      >= 1.0.0.2    && < 1.2
-    , lens              >= 4.16       && < 4.18
-    , mtl               >= 2.2.2      && < 2.3
-    , resourcet         >= 1.2.1      && < 1.3
-    , stm               >= 2.4.0      && < 2.6
-    , text              >= 1.2.3      && < 1.3
-    , transformers      >= 0.5.2      && < 0.6
-  default-language: Haskell2010
+  ghc-options:        -Wall -Wcompat -Wincomplete-record-updates -Wincomplete-uni-patterns -Wredundant-constraints
 
 test-suite arbor-monad-metric-test
+  import:   base, common
+          , arbor-datadog
+          , base
+          , bytestring
+          , containers
+          , generic-lens
+          , hedgehog
+          , hspec
+          , hw-hspec-hedgehog
+          , lens
+          , mtl
+          , network
+          , resourcet
+          , stm
+          , text
+          , transformers
   type: exitcode-stdio-1.0
   main-is: Spec.hs
   other-modules:
@@ -61,22 +94,5 @@
       test
       src
   default-extensions: BangPatterns FlexibleContexts FlexibleInstances GeneralizedNewtypeDeriving MultiParamTypeClasses OverloadedStrings TupleSections
-  ghc-options: -threaded -rtsopts -with-rtsopts=-N
-  build-depends:
-      arbor-datadog
-    , arbor-monad-metric
-    , base >=4.7 && <5
-    , bytestring
-    , containers
-    , generic-lens
-    , hedgehog
-    , hspec
-    , hw-hspec-hedgehog
-    , lens
-    , mtl
-    , network
-    , resourcet
-    , stm
-    , text
-    , transformers
-  default-language: Haskell2010
+  ghc-options:        -threaded -rtsopts -with-rtsopts=-N
+  build-depends:      arbor-monad-metric
