diff --git a/CHANGES.md b/CHANGES.md
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -1,3 +1,11 @@
+1.8.3
+=======
+
+* [#301](https://github.com/serokell/universum/pull/301)
+  * Relax the upper bound on `text`.
+* [#300](https://github.com/serokell/universum/pull/300)
+  * Fix building with microlens-0.5.
+
 1.8.2.2
 =======
 
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -76,8 +76,7 @@
    Instead, we reexport common and well-known things from `base` and some other
    libraries that are used in everyday production programming in _Haskell_.
    > **Note**: well, we did end up inventing _some_ new things.
-4. Export more useful and commonly used functions. [Hello, my name is Dmitry. I was
-   coding _Haskell_ for 3 years but still hoogling which module `liftIO` comes from.](https://twitter.com/magnars/status/834683466130345984)
+4. Export more useful and commonly used functions.
    Things like `liftIO`, `ReaderT` type, `MVar`-related functions have unambiguous names,
    are used in almost every non-trivial project, and it's really tedious to import them
    manually every time.
diff --git a/src/Universum.hs b/src/Universum.hs
--- a/src/Universum.hs
+++ b/src/Universum.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE CPP #-}
 {-# LANGUAGE Trustworthy #-}
 {-# LANGUAGE RankNTypes #-}
 
@@ -126,7 +127,11 @@
 import qualified Lens.Micro (ASetter, Getting, over, set, (%~), (.~), (^.),
                              (^..), (^?), _1, _2, _3, _4, _5)
 import qualified Lens.Micro.Mtl (preuse, preview, use, view)
+#if MIN_VERSION_microlens(0,5,0)
+import Lens.Micro (Field1, Field2, Field3, Field4, Field5)
+#else
 import Lens.Micro.Internal (Field1, Field2, Field3, Field4, Field5)
+#endif
 
 {-# DEPRECATED
     Lens
diff --git a/src/Universum/String/Conversion.hs b/src/Universum/String/Conversion.hs
--- a/src/Universum/String/Conversion.hs
+++ b/src/Universum/String/Conversion.hs
@@ -167,26 +167,6 @@
 instance ToString LT.Text where
     toString = LT.unpack
 
-{- [Note toString-toText-rewritting]
-
-Note ON MAINTENANCE of rewrite rules below.
-
-Whenever you want to allow a newer version of @text@ package, check:
-* The @text conversions@ benchmark, that the numbers with and without the rules
-are still the expected ones (see the comments there for what to expect).
-* You may optionally check whether any changes to `pack` and `unpack` functions
-and their `INLINE`/`NOINLINE` annotations took place.
-The current rewrite rules match with what happens in `text` package
-at the c826a6cb3d29242ce3632b490670ae7997689eaa commit, and next time
-you can just check `git diff <that commit>..HEAD`.
-
-If these points hold, it should be safe to raise the upper bound on `text` version.
-
-If not, first do the necessary changes (preserving the backward compatibility),
-update the commit id above if you checked the code of the `text` package.
-Then bump the version constraint.
--}
-
 {-
 
 @toString . toText@ pattern may occur quite often after inlining because
@@ -204,6 +184,9 @@
     forall s. T.unpack (T.pack s) = s
 #-}
 
+-- This applies when `text` is older than 2.0.2, the oldest GHC version
+-- with such `text` is 9.4.4
+-- TODO: remove once we stop supporting GHC 9.4 and older.
 #if !MIN_VERSION_text(2,0,2)
 {-
 
diff --git a/universum.cabal b/universum.cabal
--- a/universum.cabal
+++ b/universum.cabal
@@ -1,6 +1,6 @@
 cabal-version:       2.2
 name:                universum
-version:             1.8.2.2
+version:             1.8.3
 synopsis:            Custom prelude used in Serokell
 description:         See README.md file for more details.
 homepage:            https://github.com/serokell/universum
@@ -20,6 +20,7 @@
                    , GHC == 9.6.6
                    , GHC == 9.8.2
                    , GHC == 9.10.1
+                   , GHC == 9.12.2
 extra-doc-files:     CHANGES.md
                    , CONTRIBUTING.md
                    , README.md
@@ -106,9 +107,7 @@
                      , mtl
                      , safe-exceptions
                      , stm
-                     -- Make sure that "toString-toText-rewritting" note
-                     -- is still valid when bumping this constraint.
-                     , text >= 1.0.0.0 && <= 2.1.1
+                     , text >= 1.0.0.0 && <= 2.2
                      , transformers
                      , unordered-containers
                      , utf8-string
