diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,11 @@
 # Changelog for polysemy-check
 
+## v0.9.0.1 (2022-12-19)
+
+- Updated to latest `kind-generics` library
+- Removed orphan instances for `View` effect, which is no longer in polysemy
+  HEAD
+
 ## v0.9.0.0 (2021-12-03)
 
 - `prepropLaw` now generates a new `Law` record, allowing for better control
diff --git a/polysemy-check.cabal b/polysemy-check.cabal
--- a/polysemy-check.cabal
+++ b/polysemy-check.cabal
@@ -5,7 +5,7 @@
 -- see: https://github.com/sol/hpack
 
 name:           polysemy-check
-version:        0.9.0.0
+version:        0.9.0.1
 synopsis:       QuickCheck for Polysemy
 description:    Please see the README on GitHub at <https://github.com/polysemy-research/polysemy-check#readme>
 category:       Polysemy
@@ -59,7 +59,7 @@
       QuickCheck
     , base >=4.7 && <5
     , containers
-    , kind-generics <=0.4.1.0
+    , kind-generics >=0.4.1.2
     , kind-generics-th
     , polysemy
   default-language: Haskell2010
@@ -104,7 +104,7 @@
     , base >=4.7 && <5
     , containers
     , hspec
-    , kind-generics <=0.4.1.0
+    , kind-generics >=0.4.1.2
     , kind-generics-th
     , polysemy
     , polysemy-check
diff --git a/src/Generics/Kind/Unexported.hs b/src/Generics/Kind/Unexported.hs
--- a/src/Generics/Kind/Unexported.hs
+++ b/src/Generics/Kind/Unexported.hs
@@ -1,6 +1,6 @@
 module Generics.Kind.Unexported where
 
-import Generics.Kind hiding (SubstRep)
+import Generics.Kind hiding (SubstRep, SubstRep')
 
 
 class SubstRep' (f :: LoT (t -> k) -> *) (x :: t) (xs :: LoT k) where
@@ -41,11 +41,4 @@
   type SubstRep (Field t) x = Field (SubstAtom t x)
   substRep   (Field x) = Field x
   unsubstRep (Field x) = Field x
-
-type family SubstAtom (f :: Atom (t -> k) d) (x :: t) :: Atom k d where
-  SubstAtom ('Var 'VZ)     x = 'Kon x
-  SubstAtom ('Var ('VS v)) x = 'Var v
-  SubstAtom ('Kon t)       x = 'Kon t
-  SubstAtom (t1 ':@: t2)   x = (SubstAtom t1 x) ':@: (SubstAtom t2 x)
-  SubstAtom (t1 ':&: t2)   x = (SubstAtom t1 x) ':&: (SubstAtom t2 x)
 
diff --git a/src/Polysemy/Check.hs b/src/Polysemy/Check.hs
--- a/src/Polysemy/Check.hs
+++ b/src/Polysemy/Check.hs
@@ -47,7 +47,6 @@
 import Polysemy
 import Polysemy.Check.Arbitrary
 import Polysemy.Check.Orphans ()
-import Polysemy.Internal
 import Polysemy.Internal.Union.Inject (Inject, inject)
 import Test.QuickCheck
 import Data.Data (Data, showConstr, toConstr)
diff --git a/src/Polysemy/Check/Arbitrary.hs b/src/Polysemy/Check/Arbitrary.hs
--- a/src/Polysemy/Check/Arbitrary.hs
+++ b/src/Polysemy/Check/Arbitrary.hs
@@ -7,7 +7,7 @@
 import Control.Applicative (liftA2)
 import Data.Kind (Type)
 import GHC.Exts (type (~~))
-import Generics.Kind hiding (SubstRep)
+import Generics.Kind hiding (SubstRep, SubstRep')
 import Generics.Kind.Unexported
 import Polysemy
 import Polysemy.Internal
diff --git a/src/Polysemy/Check/Orphans.hs b/src/Polysemy/Check/Orphans.hs
--- a/src/Polysemy/Check/Orphans.hs
+++ b/src/Polysemy/Check/Orphans.hs
@@ -15,7 +15,6 @@
 import Polysemy.State
 import Polysemy.Tagged
 import Polysemy.Trace
-import Polysemy.View
 import Polysemy.Writer
 
 deriveGenericK ''Embed
@@ -30,7 +29,6 @@
 deriveGenericK ''State
 deriveGenericK ''Tagged
 deriveGenericK ''Trace
-deriveGenericK ''View
 deriveGenericK ''Writer
 
 deriving instance Show s => Show (State s (Sem r) a)
