diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,11 @@
+# 0.4.3.12
+
+* [#164](https://github.com/stevenfontanella/microlens/pull/164), [#165](https://github.com/stevenfontanella/microlens/issues/165) Support template-haskell 2.19 (and GHC 9.6 by extension).
+
+# 0.4.3.11
+
+* [#161](https://github.com/stevenfontanella/microlens/pull/161) Fix GHC 9.4 warning for using `~` without TypeOperators
+
 # 0.4.3.10
 
 * Port lens commit [fae336e1](https://github.com/ekmett/lens/commit/fae336e191748782cff023540bd25e3582ca93fb), "Close over kind variables when computing fixed type variables", fixing lens issue [#972](https://github.com/ekmett/lens/issues/972).
diff --git a/microlens-th.cabal b/microlens-th.cabal
--- a/microlens-th.cabal
+++ b/microlens-th.cabal
@@ -1,16 +1,16 @@
 name:                microlens-th
-version:             0.4.3.11
+version:             0.4.3.12
 synopsis:            Automatic generation of record lenses for microlens
 description:
   This package lets you automatically generate lenses for data types; code was extracted from the lens package, and therefore generated lenses are fully compatible with ones generated by lens (and can be used both from lens and microlens).
   .
-  This package is a part of the <http://hackage.haskell.org/package/microlens microlens> family; see the readme <https://github.com/monadfix/microlens#readme on Github>.
+  This package is a part of the <http://hackage.haskell.org/package/microlens microlens> family; see the readme <https://github.com/stevenfontanella/microlens#readme on Github>.
 license:             BSD3
 license-file:        LICENSE
 author:              Eric Mertens, Edward Kmett, Artyom Kazak
 maintainer:          Steven Fontanella <steven.fontanella@gmail.com>
-homepage:            http://github.com/monadfix/microlens
-bug-reports:         http://github.com/monadfix/microlens/issues
+homepage:            http://github.com/stevenfontanella/microlens
+bug-reports:         http://github.com/stevenfontanella/microlens/issues
 category:            Data, Lenses
 build-type:          Simple
 extra-source-files:
@@ -28,10 +28,11 @@
                      GHC==9.0.2
                      GHC==9.2.5
                      GHC==9.4.3
+                     GHC==9.6.1
 
 source-repository head
   type:                git
-  location:            git://github.com/monadfix/microlens.git
+  location:            https://github.com/stevenfontanella/microlens.git
 
 library
   exposed-modules:     Lens.Micro.TH
@@ -42,7 +43,7 @@
                      , microlens >=0.4.0 && <0.5
                      , containers >=0.5 && <0.7
                      , transformers
-                     , template-haskell >=2.8 && <2.20
+                     , template-haskell >=2.8 && <2.21
                      , th-abstraction >=0.4.1 && <0.5
 
   ghc-options:
diff --git a/src/Lens/Micro/TH/Internal.hs b/src/Lens/Micro/TH/Internal.hs
--- a/src/Lens/Micro/TH/Internal.hs
+++ b/src/Lens/Micro/TH/Internal.hs
@@ -170,6 +170,14 @@
   typeVarsEx s f (ClassP n ts) = ClassP n <$> typeVarsEx s f ts
   typeVarsEx s f (EqualP l r)  = EqualP <$> typeVarsEx s f l <*> typeVarsEx s f r
 #endif
+#if MIN_VERSION_template_haskell(2,19,0)
+  typeVarsEx s f (PromotedInfixT  t1 n t2) = PromotedInfixT  <$> typeVarsEx s f t1
+                                                             <*> pure n
+                                                             <*> typeVarsEx s f t2
+  typeVarsEx s f (PromotedUInfixT t1 n t2) = PromotedUInfixT <$> typeVarsEx s f t1
+                                                             <*> pure n
+                                                             <*> typeVarsEx s f t2
+#endif
 
 instance HasTypeVars Con where
   typeVarsEx s f (NormalC n ts) = NormalC n <$> (traverse . _2) (typeVarsEx s f) ts
