diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,10 @@
 # Changelog
 
+## [0.3.0.1] - 2024-07-26
+
+
+* Support for `autodocodec >=0.4` and `autodocodec-schema >=0.2`.
+
 ## [0.3.0.0] - 2024-06-23
 
 ### Added
diff --git a/autodocodec-yaml.cabal b/autodocodec-yaml.cabal
--- a/autodocodec-yaml.cabal
+++ b/autodocodec-yaml.cabal
@@ -5,7 +5,7 @@
 -- see: https://github.com/sol/hpack
 
 name:           autodocodec-yaml
-version:        0.3.0.1
+version:        0.3.0.2
 synopsis:       Autodocodec interpreters for yaml
 homepage:       https://github.com/NorfairKing/autodocodec#readme
 bug-reports:    https://github.com/NorfairKing/autodocodec/issues
@@ -34,7 +34,7 @@
   hs-source-dirs:
       src
   build-depends:
-      autodocodec >=0.3.0.0
+      autodocodec >=0.4.0.0
     , autodocodec-schema >=0.1.0.5
     , base >=4.7 && <5
     , bytestring
diff --git a/src/Autodocodec/Yaml/Encode.hs b/src/Autodocodec/Yaml/Encode.hs
--- a/src/Autodocodec/Yaml/Encode.hs
+++ b/src/Autodocodec/Yaml/Encode.hs
@@ -36,6 +36,7 @@
       NullCodec -> Yaml.null
       BoolCodec _ -> Yaml.bool (coerce a :: Bool)
       StringCodec _ -> Yaml.string (coerce a :: Text)
+      IntegerCodec _ _ -> Yaml.scientific $ fromInteger (coerce a :: Integer)
       NumberCodec _ _ -> yamlNumber (coerce a :: Scientific)
       ArrayOfCodec _ c -> Yaml.array (map (`go` c) (V.toList (coerce a :: Vector _)))
       ObjectOfCodec _ oc -> Yaml.mapping (goObject a oc)
diff --git a/src/Autodocodec/Yaml/Schema.hs b/src/Autodocodec/Yaml/Schema.hs
--- a/src/Autodocodec/Yaml/Schema.hs
+++ b/src/Autodocodec/Yaml/Schema.hs
@@ -98,9 +98,8 @@
       NullSchema -> [[fore yellow "null"]]
       BoolSchema -> [[fore yellow "<boolean>"]]
       StringSchema -> [[fore yellow "<string>"]]
-      NumberSchema mBounds -> case mBounds of
-        Nothing -> [[fore yellow "<number>"]]
-        Just nb -> numberBoundsChunks nb
+      IntegerSchema bounds -> integerBoundsChunks bounds
+      NumberSchema _ -> [[fore yellow "<number>"]] -- TODO bounds?
       ArraySchema s ->
         let addListMarker = addInFrontOfFirstInList ["- "]
          in addListMarker $ go s
@@ -144,28 +143,33 @@
       ObjectAnyOfSchema ne -> anyOfChunks $ NE.map goObject ne
       ObjectOneOfSchema ne -> oneOfChunks $ NE.map goObject ne
 
-    numberBoundsChunks :: NumberBounds -> [[Chunk]]
-    numberBoundsChunks nb =
-      [ [fore yellow "<number>", " # "] ++ case guessNumberBoundsSymbolic nb of
+    integerBoundsChunks :: Bounds Integer -> [[Chunk]]
+    integerBoundsChunks nb =
+      [ fore yellow "<integer>" : case guessIntegerBoundsSymbolic nb of
           BitUInt w ->
-            [ fore green $ chunk $ T.pack $ show w <> " bit unsigned integer"
+            [ " # ",
+              fore green $ chunk $ T.pack $ show w <> " bit unsigned integer"
             ]
           BitSInt w ->
-            [ fore green $ chunk $ T.pack $ show w <> " bit signed integer"
-            ]
-          OtherNumberBounds l u ->
-            [ "between ",
-              fore green $ scientificChunk l,
-              " and ",
-              fore green $ scientificChunk u
+            [ " # ",
+              fore green $ chunk $ T.pack $ show w <> " bit signed integer"
             ]
+          OtherIntegerBounds ml mu -> case (ml, mu) of
+            (Nothing, Nothing) -> []
+            (Just l, Nothing) -> [fore green $ integerChunk l, " or more"]
+            (Nothing, Just l) -> [fore green $ integerChunk l, " or less"]
+            (Just l, Just u) ->
+              [ "between ",
+                fore green $ integerChunk l,
+                " and ",
+                fore green $ integerChunk u
+              ]
       ]
       where
-        scientificChunk = \case
+        integerChunk = \case
           Zero -> "0"
           PowerOf2 w -> chunk $ T.pack $ "2^" <> show w
           PowerOf2MinusOne w -> chunk $ T.pack $ "2^" <> show w <> "-1"
           MinusPowerOf2 w -> chunk $ T.pack $ "-2^" <> show w
           MinusPowerOf2MinusOne w -> chunk $ T.pack $ "- (2^" <> show w <> "-1)"
           OtherInteger i -> chunk $ T.pack $ show i
-          OtherDouble d -> chunk $ T.pack $ show d
