diff --git a/CHANGELOG b/CHANGELOG
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,9 @@
+sketch-frp-copilot (1.0.2) upstream; urgency=medium
+
+  * Update copilot to version 3.9.
+
+ -- Joey Hess <id@joeyh.name>  Sun, 08 May 2022 14:44:45 -0400
+
 sketch-frp-copilot (1.0.1) upstream; urgency=medium
 
   * Added the Context type class and improved the name of a type
diff --git a/TODO b/TODO
--- a/TODO
+++ b/TODO
@@ -1,3 +1,5 @@
+* Main.hs contains some common code that could be refactored to here.
+
 * liftB and liftB2 imply liftB[3..5] at least ought to exist.
 
   Really, want something like Applicative. But apparently TypedBehavior
diff --git a/sketch-frp-copilot.cabal b/sketch-frp-copilot.cabal
--- a/sketch-frp-copilot.cabal
+++ b/sketch-frp-copilot.cabal
@@ -1,5 +1,5 @@
 Name: sketch-frp-copilot
-Version: 1.0.1
+Version: 1.0.2
 Cabal-Version: >= 1.10
 License: BSD3
 Maintainer: Joey Hess <id@joeyh.name>
@@ -9,7 +9,7 @@
 License-File: LICENSE
 Build-Type: Simple
 Category: Embedded, Language
-Synopsis: FRP sketch programming with Copilot
+Synopsis: Sketch programming with Copilot
 Description:
  This extends Copilot with a FRP-like interface which can be used to
  implement simple standalone programs (sketches) for embedded boards.
@@ -35,9 +35,9 @@
     Sketch.FRP.Copilot.Internals
   Build-Depends:
     base (>= 4.5 && < 5),
-    copilot (== 3.7.*),
-    copilot-c99 (== 3.7.*),
-    copilot-language (== 3.7.*),
+    copilot (== 3.9.*),
+    copilot-c99 (== 3.9.*),
+    copilot-language (== 3.9.*),
     mtl,
     optparse-applicative (>= 0.14.1),
     containers
