diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,25 @@
+
+31000.0.0
+=========
+
+ * Updated for mattermost-api version 31000.0.0
+ * Updated genPostType to genType to match upstream type change
+ * Updated postPropAttachment generator
+ * Remove -Werror for Hackage uploads
+
+30802.1.0
+=========
+
+* Switched from Arbitrary instances to Gen x functions.
+* Removed dependency on quickcheck-instances
+* Updated for mattermost-api version 30802.1.0
+
+30802.0.0
+=========
+
+* Updated for mattermost-api version 30802.0.0
+
+30701.1.0
+=========
+
+* First version.
diff --git a/ChangeLog.md b/ChangeLog.md
deleted file mode 100644
--- a/ChangeLog.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# Revision history for mattermost-api-qc
-
-## 30802.1.0  -- 2017-05-13
-
-* Switched from Arbitrary instances to Gen x functions.
-* Removed dependency on quickcheck-instances
-* Updated for mattermost-api version 30802.1.0
-
-## 30802.0.0  -- 2017-05-11
-
-* Updated for mattermost-api version 30802.0.0
-	
-## 30701.1.0  -- 2017-05-09
-
-* First version.
diff --git a/mattermost-api-qc.cabal b/mattermost-api-qc.cabal
--- a/mattermost-api-qc.cabal
+++ b/mattermost-api-qc.cabal
@@ -1,5 +1,6 @@
 name:                mattermost-api-qc
-version:             30802.1.0
+version:             31000.0.0
+description:         A testing library for the mattermost-api library
 synopsis:            QuickCheck instances for the Mattermost client API library
 homepage:            https://github.com/matterhorn-chat/mattermost-api-qc
 license:             ISC
@@ -9,7 +10,7 @@
 copyright:           2017 Kevin Quick
 category:            Testing
 build-type:          Simple
-extra-source-files:  ChangeLog.md
+extra-source-files:  CHANGELOG.md
 cabal-version:       >=1.10
 tested-with:         GHC == 8.0.2
 
@@ -21,7 +22,7 @@
   exposed-modules:     Network.Mattermost.QuickCheck
   build-depends:       base >=4.4 && <5
                      , containers
-                     , mattermost-api == 30802.1.0
+                     , mattermost-api == 31000.0.0
                      , QuickCheck
                      , text
                      , time
diff --git a/src/Network/Mattermost/QuickCheck.hs b/src/Network/Mattermost/QuickCheck.hs
--- a/src/Network/Mattermost/QuickCheck.hs
+++ b/src/Network/Mattermost/QuickCheck.hs
@@ -55,7 +55,6 @@
                 , return Direct
                 , return Private
                 , return Group
-                , return SystemHeaderChange
                 , Unknown <$> genText
                 ]
 
@@ -73,9 +72,43 @@
                  , Just <$> (genSeq genPostPropAttachment)
                  ]
 
+genPostPropAttachmentField :: Gen PostPropAttachmentField
+genPostPropAttachmentField =
+  PostPropAttachmentField <$> genText
+                          <*> genText
+                          <*> oneof [ return True, return False ]
+
 genPostPropAttachment :: Gen PostPropAttachment
-genPostPropAttachment = PostPropAttachment <$> genText <*> genText
+genPostPropAttachment = PostPropAttachment
+                        <$> arbitrary
+                        <*> genText
+                        <*> genText
+                        <*> genText
+                        <*> genText
+                        <*> genText
+                        <*> genText
+                        <*> genText
+                        <*> genText
+                        <*> genText
+                        <*> genSeq genPostPropAttachmentField
+                        <*> genText
+                        <*> genText
+                        <*> genText
+                        <*> genText
 
+genPostType :: Gen PostType
+genPostType = oneof [ return PostTypeJoinChannel
+                    , return PostTypeLeaveChannel
+                    , return PostTypeAddToChannel
+                    , return PostTypeRemoveFromChannel
+                    , return PostTypeHeaderChange
+                    , return PostTypeDisplayNameChange
+                    , return PostTypePurposeChange
+                    , return PostTypeChannelDeleted
+                    , return PostTypeEphemeral
+                    , PostTypeUnknown <$> genText
+                    ]
+
 genPost :: Gen Post
 genPost = Post
           <$> genMaybe genPostId
@@ -84,7 +117,7 @@
           <*> genText
           <*> genSeq genFileId
           <*> genPostId
-          <*> genType
+          <*> genPostType
           <*> genText
           <*> genMaybe genTime
           <*> genText
