diff --git a/antiope-contract.cabal b/antiope-contract.cabal
--- a/antiope-contract.cabal
+++ b/antiope-contract.cabal
@@ -1,33 +1,34 @@
-cabal-version: 2.2
+cabal-version: 2.4
 
-name:               antiope-contract
-version:            7.3.2
-synopsis:           Please see the README on Github at <https://github.com/arbor/antiope#readme>
-description:        Please see the README on Github at <https://github.com/arbor/antiope#readme>.
-category:           Services
-homepage:           https://github.com/packetloop/antiope-contract#readme
-author:             Arbor Networks
-maintainer:         mayhem@arbor.net
-copyright:          Arbor Networks
-license:            MIT
-license-file:       LICENSE
-build-type:         Simple
-extra-source-files:
-    contract/file_change_message.avsc
-    contract/resource_changed.avsc
-    README.md
+name:                   antiope-contract
+version:                7.3.3
+synopsis:               Please see the README on Github at <https://github.com/arbor/antiope#readme>
+description:            Please see the README on Github at <https://github.com/arbor/antiope#readme>.
+category:               Services
+homepage:               https://github.com/packetloop/antiope-contract#readme
+author:                 Arbor Networks
+maintainer:             mayhem@arbor.net
+copyright:              Arbor Networks
+license:                MIT
+license-file:           LICENSE
+build-type:             Simple
+extra-source-files:     contract/file_change_message.avsc
+                        contract/resource_changed.avsc
+                        README.md
 
+common base     { build-depends:  base      >= 4.7    && < 5 }
+
+common config
+  default-language:     Haskell2010
+  ghc-options:          -Wall -Wcompat -Wincomplete-record-updates -Wincomplete-uni-patterns -Wredundant-constraints
+
 library
-  exposed-modules:
-      Antiope.Contract.SQS.FileChangeMessage
-      Antiope.Contract.SQS.ResourceChanged
-  hs-source-dirs: src
-  ghc-options: -Wall
-  build-depends:
-      aeson
-    , antiope-s3
-    , avro
-    , base >=4.7 && <5
-    , bytestring
-    , text
-  default-language: Haskell2010
+  import:               base, config
+  exposed-modules:      Antiope.Contract.SQS.FileChangeMessage
+                        Antiope.Contract.SQS.ResourceChanged
+  hs-source-dirs:       src
+  build-depends:        aeson
+                      , antiope-s3
+                      , avro
+                      , bytestring
+                      , text
