diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,15 @@
 
 `hslua` uses [PVP Versioning][].
 
+## hslua-2.3.1
+
+Released 2024-01-18.
+
+-   Relaxed upper bound for text, containers, and bytestring,
+    allowing text-2.1, containers-0.7, and bytestring-0.12.
+
+-   Require latest versions of HsLua packages.
+
 ## hslua-2.3.0
 
 Released 2023-03-13.
diff --git a/LICENSE b/LICENSE
--- a/LICENSE
+++ b/LICENSE
@@ -1,7 +1,7 @@
 Copyright © 1994-2022 Lua.org, PUC-Rio.
 Copyright © 2007-2012 Gracjan Polak
 Copyright © 2012-2015 Ömer Sinan Ağacan
-Copyright © 2016-2023 Albert Krewinkel
+Copyright © 2016-2024 Albert Krewinkel
 
 Permission is hereby granted, free of charge, to any person obtaining a
 copy of this software and associated documentation files (the
diff --git a/hslua.cabal b/hslua.cabal
--- a/hslua.cabal
+++ b/hslua.cabal
@@ -1,6 +1,6 @@
 cabal-version:       2.2
 name:                hslua
-version:             2.3.0
+version:             2.3.1
 synopsis:            Bindings to Lua, an embeddable scripting language
 description:         HsLua provides wrappers and helpers
                      to bridge Haskell and <https://www.lua.org/ Lua>.
@@ -19,7 +19,7 @@
 maintainer:          tarleb@hslua.org
 copyright:           © 2007–2012 Gracjan Polak;
                      © 2012–2016 Ömer Sinan Ağacan;
-                     © 2017-2023 Albert Krewinkel
+                     © 2017-2024 Albert Krewinkel
 category:            Foreign
 build-type:          Simple
 extra-source-files:  README.md
@@ -30,8 +30,10 @@
                    , GHC == 8.8.4
                    , GHC == 8.10.7
                    , GHC == 9.0.2
-                   , GHC == 9.2.5
-                   , GHC == 9.4.4
+                   , GHC == 9.2.8
+                   , GHC == 9.4.8
+                   , GHC == 9.6.3
+                   , GHC == 9.8.1
 
 source-repository head
   type:                git
@@ -40,18 +42,18 @@
 common common-options
   default-language:    Haskell2010
   build-depends:       base                    >= 4.11  && < 5
-                     , bytestring              >= 0.10.2 && < 0.12
-                     , containers              >= 0.5.9  && < 0.7
+                     , bytestring              >= 0.10.2 && < 0.13
+                     , containers              >= 0.5.9  && < 0.8
                      , exceptions              >= 0.8    && < 0.11
-                     , hslua-aeson             >= 2.3    && < 2.4
-                     , hslua-core              >= 2.3    && < 2.4
-                     , hslua-classes           >= 2.2    && < 2.4
-                     , hslua-marshalling       >= 2.3    && < 2.4
-                     , hslua-objectorientation >= 2.3    && < 2.4
-                     , hslua-packaging         >= 2.3    && < 2.4
-                     , hslua-typing            >= 0.1    && < 0.2
+                     , hslua-aeson             >= 2.3.1  && < 2.4
+                     , hslua-core              >= 2.3.2  && < 2.4
+                     , hslua-classes           >= 2.2.1  && < 2.4
+                     , hslua-marshalling       >= 2.3.1  && < 2.4
+                     , hslua-objectorientation >= 2.3.1  && < 2.4
+                     , hslua-packaging         >= 2.3.1  && < 2.4
+                     , hslua-typing            >= 0.1.1  && < 0.2
                      , mtl                     >= 2.2    && < 2.4
-                     , text                    >= 1.2    && < 2.1
+                     , text                    >= 1.2    && < 2.2
   ghc-options:         -Wall
                        -Wincomplete-record-updates
                        -Wnoncanonical-monad-instances
diff --git a/src/HsLua.hs b/src/HsLua.hs
--- a/src/HsLua.hs
+++ b/src/HsLua.hs
@@ -2,7 +2,7 @@
 Module      : HsLua
 Copyright   : © 2007–2012 Gracjan Polak;
               © 2012–2016 Ömer Sinan Ağacan;
-              © 2017-2023 Albert Krewinkel
+              © 2017-2024 Albert Krewinkel
 License     : MIT
 Maintainer  : Albert Krewinkel <tarleb@hslua.org>
 Stability   : beta
diff --git a/src/HsLua/Util.hs b/src/HsLua/Util.hs
--- a/src/HsLua/Util.hs
+++ b/src/HsLua/Util.hs
@@ -2,7 +2,7 @@
 Module      : HsLua.Util
 Copyright   : © 2007–2012 Gracjan Polak;
               © 2012–2016 Ömer Sinan Ağacan;
-              © 2017-2023 Albert Krewinkel
+              © 2017-2024 Albert Krewinkel
 License     : MIT
 Maintainer  : Albert Krewinkel <tarleb@hslua.org>
 Stability   : beta
diff --git a/test/HsLua/UtilTests.hs b/test/HsLua/UtilTests.hs
--- a/test/HsLua/UtilTests.hs
+++ b/test/HsLua/UtilTests.hs
@@ -1,7 +1,7 @@
 {-# LANGUAGE OverloadedStrings #-}
 {-|
 Module      :  HsLua.UtilTests
-Copyright   :  © 2017-2023 Albert Krewinkel
+Copyright   :  © 2017-2024 Albert Krewinkel
 License     :  MIT
 
 Maintainer  :  Albert Krewinkel <tarleb@hslua.org>
diff --git a/test/HsLuaTests.hs b/test/HsLuaTests.hs
--- a/test/HsLuaTests.hs
+++ b/test/HsLuaTests.hs
@@ -3,7 +3,7 @@
 {-# LANGUAGE TypeApplications #-}
 {-|
 Module      : HsLua.Packaging.Module
-Copyright   : © 2019-2023 Albert Krewinkel
+Copyright   : © 2019-2024 Albert Krewinkel
 License     : MIT
 Maintainer  : Albert Krewinkel <tarleb@hslua.org>
 Stability   : alpha
diff --git a/test/test-hslua.hs b/test/test-hslua.hs
--- a/test/test-hslua.hs
+++ b/test/test-hslua.hs
@@ -1,6 +1,6 @@
 {-|
 Module      : Main
-Copyright   : © 2017-2023 Albert Krewinkel
+Copyright   : © 2017-2024 Albert Krewinkel
 License     : MIT
 Maintainer  : Albert Krewinkel <tarleb@hslua.org>
 
