diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,10 +1,16 @@
 # ChangeLog
 
+## 0.2.4
+
+* Putting `#if` for `threadLabel`.
+* Revert Timeout.hs which is accidentally committed.
+
 ## 0.2.3
 
 * Supporting tls v2.1.3.
 * Labeling threads.
 * Using data-default.
+* Removing `unliftio`.
 
 ## 0.2.2
 
diff --git a/Network/QUIC/Common.hs b/Network/QUIC/Common.hs
--- a/Network/QUIC/Common.hs
+++ b/Network/QUIC/Common.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE CPP #-}
 {-# LANGUAGE StrictData #-}
 
 module Network.QUIC.Common where
@@ -27,9 +28,15 @@
 maximumPacketSize _ = 1500 - 20 - 8 -- fixme
 
 labelMe :: String -> IO ()
+#if MIN_VERSION_base(4,18,0)
 labelMe name = do
     tid <- myThreadId
     mlabel <- threadLabel tid
     case mlabel of
         Nothing -> labelThread tid name
         Just _ -> return ()
+#else
+labelMe name = do
+    tid <- myThreadId
+    labelThread tid name
+#endif
diff --git a/quic.cabal b/quic.cabal
--- a/quic.cabal
+++ b/quic.cabal
@@ -1,6 +1,6 @@
 cabal-version:      >=1.10
 name:               quic
-version:            0.2.3
+version:            0.2.4
 license:            BSD3
 license-file:       LICENSE
 maintainer:         kazu@iij.ad.jp
