diff --git a/hslua-aeson.cabal b/hslua-aeson.cabal
--- a/hslua-aeson.cabal
+++ b/hslua-aeson.cabal
@@ -1,5 +1,5 @@
 name:                hslua-aeson
-version:             0.1.0.3
+version:             0.1.0.4
 synopsis:            Glue between aeson and hslua
 description:         Please see README.md
 homepage:            https://github.com/tarleb/hslua-aeson#readme
@@ -17,7 +17,7 @@
   hs-source-dirs:      src
   exposed-modules:     Scripting.Lua.Aeson
   build-depends:       base                 >= 4.7     && < 5
-                     , aeson                >= 0.11    && < 1.2
+                     , aeson                >= 0.11    && < 1.3
                      , hashable             >= 1.2     && < 1.3
                      , hslua                >= 0.4     && < 0.6
                      , scientific           >= 0.3     && < 0.4
diff --git a/test/AesonSpec.hs b/test/AesonSpec.hs
--- a/test/AesonSpec.hs
+++ b/test/AesonSpec.hs
@@ -99,7 +99,7 @@
     Lua.push lua value *> Lua.setglobal lua var
   let luaScript = "function run() return (" ++ luaTestCode ++ ") end"
   Lua.openlibs lua
-  _ <- Lua.loadstring lua luaScript "test script"
+  _ <- loadstring lua luaScript "test script"
   Lua.call lua 0 0
   retval <- Lua.callfunc lua "run"
   Lua.close lua
@@ -120,3 +120,11 @@
     , (2, resize (size - 1) $ Aeson.Array <$> arbitrary)
     , (2, resize (size - 1) $ Aeson.Object <$> arbitrary)
     ]
+
+-- | Interpret string as lua code and load into the lua environment.
+loadstring :: Lua.LuaState -> String -> String -> IO Int
+#if MIN_VERSION_hslua(0,5,0)
+loadstring lua script _ = Lua.loadstring lua script
+#else
+loadstring lua script cn = Lua.loadstring lua script cn
+#endif
