diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+# 1.2.0.0
+
+* Raise bounds for `reflex-0.9`
+
 # 1.1.0.0
 
 * Added instance for `LocalizedPrint ()`
diff --git a/reflex-localize.cabal b/reflex-localize.cabal
--- a/reflex-localize.cabal
+++ b/reflex-localize.cabal
@@ -1,5 +1,5 @@
 name:                reflex-localize
-version:             1.1.0.0
+version:             1.2.0.0
 synopsis:            Localization library for reflex
 description:         Library provides helpers for dynamic strings that depends on current selected language.
   See also `reflex-localize-dom` for examples and DOM related helpers.
@@ -37,9 +37,10 @@
       base                      >= 4.5      && < 4.15
     , jsaddle
     , mtl
-    , reflex                    >= 0.4      && < 0.9
+    , reflex                    >= 0.4      && < 0.10
     , reflex-external-ref
     , text
+    , commutative-semigroups
   default-language:    Haskell2010
   default-extensions:
     CPP
diff --git a/src/Reflex/Localize/Monad.hs b/src/Reflex/Localize/Monad.hs
--- a/src/Reflex/Localize/Monad.hs
+++ b/src/Reflex/Localize/Monad.hs
@@ -16,7 +16,7 @@
   -- | Switch frontend language
   setLanguage :: Language -> m ()
   -- | Switch frontend language by event
-  setLanguageE :: Event t (Language) -> m ()
+  setLanguageE :: Event t Language -> m ()
   -- | Get language of the frontend
   getLanguage :: m (Dynamic t Language)
 
diff --git a/src/Reflex/Localize/Trans.hs b/src/Reflex/Localize/Trans.hs
--- a/src/Reflex/Localize/Trans.hs
+++ b/src/Reflex/Localize/Trans.hs
@@ -19,6 +19,10 @@
 import Reflex.Localize.Language
 import Reflex.Localize.Monad
 
+#if MIN_VERSION_reflex(0,9,0)
+import Data.Semigroup.Commutative (Commutative)
+#endif 
+
 data LocalizeEnv t = LocalizeEnv {
   locEnvLangRef :: !(ExternalRef t Language)
 } deriving (Generic)
@@ -41,7 +45,11 @@
 #ifndef ghcjs_HOST_OS
 deriving instance MonadJSM m => MonadJSM (LocalizeT t m)
 #endif
+#if MIN_VERSION_reflex(0,9,0)
+deriving instance (Group q, Commutative q, Query q, Eq q, MonadQuery t q m, Monad m) => MonadQuery t q (LocalizeT t m)
+#else 
 deriving instance (Group q, Additive q, Query q, Eq q, MonadQuery t q m, Monad m) => MonadQuery t q (LocalizeT t m)
+#endif
 deriving instance (Monoid w, DynamicWriter t w m) => DynamicWriter t w (LocalizeT t m)
 #if !MIN_VERSION_reflex(0,7,0)
 deriving instance (Monoid w, MonadBehaviorWriter t w m) => MonadBehaviorWriter t w (RetractT t m)
