diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,9 @@
+# 0.7.5
+
+- Add Compose and (,) Crosswalk instances
+- Add `bitraverseThese`
+- GHC-8.6 support
+
 # 0.7.4
 
 - QuickCheck-2.10 support: Arbitrary1/2 instances
diff --git a/Data/Align.hs b/Data/Align.hs
--- a/Data/Align.hs
+++ b/Data/Align.hs
@@ -29,6 +29,7 @@
 import Data.Bifoldable (Bifoldable(..))
 import Data.Bifunctor (Bifunctor(..))
 import Data.Foldable
+import Data.Functor.Compose
 import Data.Functor.Identity
 import Data.Functor.Product
 import Data.Hashable (Hashable(..))
@@ -367,6 +368,18 @@
 
 instance Crosswalk V.Vector where
     crosswalk = crosswalkVector
+
+instance Crosswalk ((,) a) where
+    crosswalk fun (a, x) = fmap ((,) a) (fun x)
+
+-- can't (shouldn't) do longer tuples until there are Functor and Foldable
+-- instances for them
+
+instance (Crosswalk f, Crosswalk g) => Crosswalk (Compose f g) where
+    crosswalk f = id
+        . fmap Compose -- can't coerce: maybe the Align-able thing has role nominal
+        . crosswalk (crosswalk f)
+        . getCompose
 
 -- --------------------------------------------------------------------------
 -- | Bifoldable bifunctors supporting traversal through an alignable
diff --git a/Data/These.hs b/Data/These.hs
--- a/Data/These.hs
+++ b/Data/These.hs
@@ -42,6 +42,8 @@
                   , mapThis
                   , mapThat
 
+                  , bitraverseThese
+
                     -- $align
                   ) where
 
@@ -174,6 +176,12 @@
 mapThese _ g (That    x) = That (g x)
 mapThese f g (These a x) = These (f a) (g x)
 
+-- | 'Bitraversable'.
+bitraverseThese :: Applicative f => (a -> f c) -> (b -> f d) -> These a b -> f (These c d)
+bitraverseThese f _ (This x) = This <$> f x
+bitraverseThese _ g (That x) = That <$> g x
+bitraverseThese f g (These x y) = These <$> f x <*> g y
+
 -- | @'mapThis' = over 'here'@
 mapThis :: (a -> c) -> These a b -> These c b
 mapThis f = mapThese f id
@@ -250,9 +258,7 @@
     bifold1 = these id id (<>)
 
 instance Bitraversable These where
-    bitraverse f _ (This x) = This <$> f x
-    bitraverse _ g (That x) = That <$> g x
-    bitraverse f g (These x y) = These <$> f x <*> g y
+    bitraverse = bitraverseThese
 
 instance Bitraversable1 These where
     bitraverse1 f _ (This x) = This <$> f x
diff --git a/test/Tests.hs b/test/Tests.hs
--- a/test/Tests.hs
+++ b/test/Tests.hs
@@ -1,4 +1,3 @@
-{-# OPTIONS_GHC -fno-warn-orphans #-}
 {-# LANGUAGE CPP #-}
 {-# LANGUAGE FlexibleContexts #-}
 {-# LANGUAGE ScopedTypeVariables #-}
@@ -64,6 +63,8 @@
   , crosswalkLaws "These" (Proxy :: Proxy (These Int))
   , crosswalkLaws "Seq" (Proxy :: Proxy Seq)
   , crosswalkLaws "Vector" (Proxy :: Proxy V.Vector)
+  , crosswalkLaws "(,) Int" (Proxy :: Proxy ((,) Int))
+  , crosswalkLaws "Compose [] []" (Proxy :: Proxy (Compose [] []))
   , testProperty "Map value laziness property" mapStrictnessProp
   , testProperty "IntMap value laziness property" intmapStrictnessProp
   , aesonProps
diff --git a/these.cabal b/these.cabal
--- a/these.cabal
+++ b/these.cabal
@@ -1,5 +1,5 @@
 Name:                these
-Version:             0.7.4
+Version:             0.7.5
 Synopsis:            An either-or-both data type & a generalized 'zip with padding' typeclass
 Homepage:            https://github.com/isomorphism/these
 License:             BSD3
@@ -28,7 +28,9 @@
   GHC==7.8.4,
   GHC==7.10.3,
   GHC==8.0.2,
-  GHC==8.2.1
+  GHC==8.2.2,
+  GHC==8.4.3,
+  GHC==8.6.1
 
 source-repository head
   type: git
@@ -42,22 +44,22 @@
                        Control.Monad.Chronicle.Class,
                        Control.Monad.Trans.Chronicle
 
-  Build-depends:       base                     >= 4.4     && < 4.11,
-                       aeson                    >= 0.7.0.4 && < 1.3,
-                       bifunctors               >= 0.1     && < 5.5,
+  Build-depends:       base                     >= 4.4     && < 4.13,
+                       aeson                    >= 0.7.0.4 && < 1.5,
+                       bifunctors               >= 0.1     && < 5.6,
                        binary                   >= 0.5.0.2 && < 0.10,
-                       containers               >= 0.4     && < 0.6,
+                       containers               >= 0.4     && < 0.7,
                        data-default-class       >= 0.0     && < 0.2,
                        deepseq                  >= 1.3.0.0 && < 1.5,
                        hashable                 >= 1.2.3   && < 1.3,
-                       keys                     >= 3.10    && < 3.12,
+                       keys                     >= 3.10    && < 3.13,
                        mtl                      >= 2       && < 2.3,
-                       profunctors              >= 3       && < 5.3,
-                       QuickCheck               >= 2.10    && < 2.11,
-                       semigroupoids            >= 1.0     && < 5.3,
+                       profunctors              >= 3       && < 5.4,
+                       QuickCheck               >= 2.10    && < 2.13,
+                       semigroupoids            >= 5       && < 5.4,
                        transformers             >= 0.2     && < 0.6,
-                       transformers-compat      >= 0.2     && < 0.6,
-                       unordered-containers     >= 0.2     && < 0.3,
+                       transformers-compat      >= 0.2     && < 0.7,
+                       unordered-containers     >= 0.2.4.0 && < 0.3,
                        vector                   >= 0.4     && < 0.13,
                        vector-instances         >= 3.3.1   && < 3.5
   if impl(ghc <7.5)
@@ -76,9 +78,9 @@
   ghc-options:         -Wall
   build-depends:       these,
                        base                    >= 4.5,
-                       quickcheck-instances    >= 0.3.15 && < 0.3.16,
-                       tasty                   >= 0.10   && < 0.12,
-                       tasty-quickcheck        >= 0.8    && < 0.10,
+                       quickcheck-instances    >= 0.3.15 && < 0.4,
+                       tasty                   >= 0.10   && < 1.2,
+                       tasty-quickcheck        >= 0.8    && < 0.11,
                        aeson,
                        bifunctors,
                        binary,
