diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
 # Changelog for `massiv-persist`
 
+## 1.0.0.0
+
+* Switch to support `massiv-1.0.0.0`
+
 ## 0.1.0.0
 
 * Initial release
diff --git a/massiv-persist.cabal b/massiv-persist.cabal
--- a/massiv-persist.cabal
+++ b/massiv-persist.cabal
@@ -1,5 +1,5 @@
 name:                massiv-persist
-version:             0.1.0.0
+version:             1.0.0.0
 synopsis:            Compatibility of 'massiv' with 'persist'
 description:         Orphan 'Persist' class instances from <https://hackage.haskell.org/package/persist persist> package that allow serialization of arrays defined in <https://hackage.haskell.org/package/massiv massiv> package
 homepage:            https://github.com/lehins/massiv-compat
@@ -30,7 +30,7 @@
   build-depends:       base >= 4.8 && < 5
                      , bytestring
                      , deepseq
-                     , massiv >= 0.5.9.0
+                     , massiv >= 1.0.0.0
                      , persist
                      , primitive
 
@@ -50,7 +50,7 @@
   build-tool-depends: hspec-discover:hspec-discover
   build-depends:      base             >= 4.8 && < 5
                     , massiv-persist
-                    , massiv-test >= 0.1.5
+                    , massiv-test >= 1.0.0
                     , massiv
                     , persist
                     , hspec
diff --git a/src/Massiv/Persist.hs b/src/Massiv/Persist.hs
--- a/src/Massiv/Persist.hs
+++ b/src/Massiv/Persist.hs
@@ -138,10 +138,7 @@
 
 
 -- | Serialize array computation startegy and size
-putArrayHeader ::
-     forall r ix e. Manifest r ix e
-  => Array r ix e
-  -> Put ()
+putArrayHeader :: forall r ix e. (Strategy r, Size r, Index ix) => Array r ix e -> Put ()
 putArrayHeader arr = do
   put (getComp arr)
   put (size arr)
@@ -150,10 +147,14 @@
   put = putArray
   get = getArray
 
-instance (Index ix, NFData e, Persist e) => Persist (Array N ix e) where
+instance (Index ix, Persist e) => Persist (Array BL ix e) where
   put = putArray
   get = getArray
 
+instance (Index ix, NFData e, Persist e) => Persist (Array BN ix e) where
+  put = putArray
+  get = getArray
+
 instance (Index ix, Unbox e, Persist e) => Persist (Array U ix e) where
   put = putArray
   get = getArray
@@ -161,7 +162,7 @@
 -- | Serialize array as `LittleEndian`
 --
 -- @since 0.1.0
-putArray :: (Manifest r ix e, Persist e) => Array r ix e -> Put ()
+putArray :: (Manifest r e, Index ix, Persist e) => Array r ix e -> Put ()
 putArray arr = do
   putArrayHeader arr
   A.mapM_ put arr
@@ -169,7 +170,7 @@
 -- | Deserialize array from binary form in `LittleEndian`
 --
 -- @since 0.1.0
-getArray :: (Mutable r ix e, Persist e) => Get (Array r ix e)
+getArray :: (Mutable r e, Index ix, Persist e) => Get (Array r ix e)
 getArray = do
   comp <- get
   sz <- get
diff --git a/tests/Main.hs b/tests/Main.hs
--- a/tests/Main.hs
+++ b/tests/Main.hs
@@ -1,6 +1,6 @@
 module Main where
 
-import Spec
+import Spec (spec)
 import System.IO (BufferMode (LineBuffering), hSetBuffering, hSetEncoding, stdout, utf8)
 import Test.Hspec
 
diff --git a/tests/Spec.hs b/tests/Spec.hs
--- a/tests/Spec.hs
+++ b/tests/Spec.hs
@@ -1,1 +1,1 @@
-{-# OPTIONS_GHC -F -pgmF hspec-discover -optF --no-main #-}
+{-# OPTIONS_GHC -F -pgmF hspec-discover -optF --module-name=Spec #-}
diff --git a/tests/Test/Massiv/PersistSpec.hs b/tests/Test/Massiv/PersistSpec.hs
--- a/tests/Test/Massiv/PersistSpec.hs
+++ b/tests/Test/Massiv/PersistSpec.hs
@@ -17,7 +17,8 @@
 
 roundtripArray ::
      forall r ix e.
-     ( Mutable r ix e
+     ( Mutable r e
+     , Index ix
      , Persist e
      , Persist (Array r ix e)
      , Eq (Array r ix e)
@@ -37,10 +38,10 @@
      forall r ix e.
      ( Eq (Array r ix e)
      , Show (Array r ix e)
-     , Typeable ix
      , Typeable e
      , Arbitrary ix
-     , Mutable r ix e
+     , Load r ix e
+     , Mutable r e
      , Arbitrary e
      , Persist e
      , Persist (Array r ix e)
@@ -66,21 +67,11 @@
       prop "Sz5" $ roundtrip @Sz5
     describe "Array" $ do
       describe "P" $ do
-        roundtripArraySpec @P @Ix1 @Word8
-        roundtripArraySpec @P @Ix2 @Word8
-        roundtripArraySpec @P @Ix3 @Word8
-        roundtripArraySpec @P @Ix4 @Word8
-        roundtripArraySpec @P @Ix5 @Word8
         roundtripArraySpec @P @Ix1 @Word16
         roundtripArraySpec @P @Ix2 @Word16
         roundtripArraySpec @P @Ix3 @Word16
         roundtripArraySpec @P @Ix4 @Word16
         roundtripArraySpec @P @Ix5 @Word16
-        roundtripArraySpec @P @Ix1 @Word32
-        roundtripArraySpec @P @Ix2 @Word32
-        roundtripArraySpec @P @Ix3 @Word32
-        roundtripArraySpec @P @Ix4 @Word32
-        roundtripArraySpec @P @Ix5 @Word32
         roundtripArraySpec @P @Ix1 @Word64
         roundtripArraySpec @P @Ix2 @Word64
         roundtripArraySpec @P @Ix3 @Word64
@@ -98,21 +89,11 @@
         roundtripArraySpec @U @Ix4 @(Int, Word)
         roundtripArraySpec @U @Ix5 @(Int, Word)
       describe "S" $ do
-        roundtripArraySpec @S @Ix1 @Word8
-        roundtripArraySpec @S @Ix2 @Word8
-        roundtripArraySpec @S @Ix3 @Word8
-        roundtripArraySpec @S @Ix4 @Word8
-        roundtripArraySpec @S @Ix5 @Word8
         roundtripArraySpec @S @Ix1 @Word16
         roundtripArraySpec @S @Ix2 @Word16
         roundtripArraySpec @S @Ix3 @Word16
         roundtripArraySpec @S @Ix4 @Word16
         roundtripArraySpec @S @Ix5 @Word16
-        roundtripArraySpec @S @Ix1 @Word32
-        roundtripArraySpec @S @Ix2 @Word32
-        roundtripArraySpec @S @Ix3 @Word32
-        roundtripArraySpec @S @Ix4 @Word32
-        roundtripArraySpec @S @Ix5 @Word32
         roundtripArraySpec @S @Ix1 @Word64
         roundtripArraySpec @S @Ix2 @Word64
         roundtripArraySpec @S @Ix3 @Word64
@@ -129,9 +110,15 @@
         roundtripArraySpec @B @Ix3 @Integer
         roundtripArraySpec @B @Ix4 @Integer
         roundtripArraySpec @B @Ix5 @Integer
-      describe "N" $ do
-        roundtripArraySpec @N @Ix1 @Integer
-        roundtripArraySpec @N @Ix2 @Integer
-        roundtripArraySpec @N @Ix3 @Integer
-        roundtripArraySpec @N @Ix4 @Integer
-        roundtripArraySpec @N @Ix5 @Integer
+      describe "BN" $ do
+        roundtripArraySpec @BN @Ix1 @Integer
+        roundtripArraySpec @BN @Ix2 @Integer
+        roundtripArraySpec @BN @Ix3 @Integer
+        roundtripArraySpec @BN @Ix4 @Integer
+        roundtripArraySpec @BN @Ix5 @Integer
+      describe "BL" $ do
+        roundtripArraySpec @BL @Ix1 @Integer
+        roundtripArraySpec @BL @Ix2 @Integer
+        roundtripArraySpec @BL @Ix3 @Integer
+        roundtripArraySpec @BL @Ix4 @Integer
+        roundtripArraySpec @BL @Ix5 @Integer
