diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+1.2.1
+  - Build against GHC 9.0
+  - Build against `tasty` 1.3 and 1.4
+
 1.2.0
   - Encode protobuf wire messages in reverse order to improve perfomance
   - Miscellaneous maintenance changes
diff --git a/proto3-wire.cabal b/proto3-wire.cabal
--- a/proto3-wire.cabal
+++ b/proto3-wire.cabal
@@ -1,5 +1,5 @@
 name:                proto3-wire
-version:             1.2.0
+version:             1.2.1
 synopsis:            A low-level implementation of the Protocol Buffers (version 3) wire format
 license:             Apache-2.0
 license-file:        LICENSE
@@ -28,7 +28,7 @@
                        cereal >= 0.5.1 && <0.6,
                        containers >=0.5 && < 0.7,
                        deepseq ==1.4.*,
-                       ghc-prim >=0.5.3 && <0.7,
+                       ghc-prim >=0.5.3 && <0.8,
                        hashable <1.4,
                        parameterized >=0.5.0.0 && <1,
                        primitive >=0.6.4 && <0.8,
@@ -58,7 +58,7 @@
                        doctest >= 0.7.0 && <0.18,
                        proto3-wire,
                        QuickCheck >=2.8 && <3.0,
-                       tasty >= 0.11 && <1.3,
+                       tasty >= 0.11 && <1.5,
                        tasty-hunit >= 0.9 && <0.11,
                        tasty-quickcheck >= 0.8.4 && <0.11,
                        text >= 0.2 && <1.3,
diff --git a/src/Proto3/Wire/Decode.hs b/src/Proto3/Wire/Decode.hs
--- a/src/Proto3/Wire/Decode.hs
+++ b/src/Proto3/Wire/Decode.hs
@@ -199,7 +199,7 @@
 gwireType wt = Left $ "wireType got unknown wire type: " ++ show wt
 
 safeSplit :: Int -> B.ByteString -> Either String (B.ByteString, B.ByteString)
-safeSplit !i! b | B.length b < i = Left "failed to parse varint128: not enough bytes"
+safeSplit !i !b | B.length b < i = Left "failed to parse varint128: not enough bytes"
                 | otherwise = Right $ B.splitAt i b
 
 takeWT :: WireType -> B.ByteString -> Either String (ParsedField, B.ByteString)
