diff --git a/.travis.yml b/.travis.yml
index e7c88e7e..644e6211 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -10,12 +10,16 @@ python:
- '2.7'
- '3.5'
- '3.6'
+ - '3.6-dev'
+ - '3.7-dev'
- 'pypy-5.3.1'
- 'pypy3.5-5.7.1-beta'
matrix:
allow_failures:
- python: 'pypy3.5-5.7.1-beta'
+ - python: '3.6-dev'
+ - python: '3.7-dev'
install:
- pip install -e .
diff --git a/gluon/globals.py b/gluon/globals.py
index b4344f0f..767a9b0b 100644
--- a/gluon/globals.py
+++ b/gluon/globals.py
@@ -464,7 +464,7 @@ class Response(Storage):
for meta in iteritems((self.meta or {})):
k, v = meta
if isinstance(v, dict):
- s += '\n'
else:
s += '\n' % (k, to_native(xmlescape(v)))
diff --git a/gluon/tests/test_globals.py b/gluon/tests/test_globals.py
index da403dbe..666249fa 100644
--- a/gluon/tests/test_globals.py
+++ b/gluon/tests/test_globals.py
@@ -230,3 +230,14 @@ class testResponse(unittest.TestCase):
current.session._fixup_before_save()
cookie = str(current.response.cookies)
self.assertTrue('httponly' not in cookie.lower())
+
+ def test_include_meta(self):
+ response = Response()
+ response.meta[u'web2py'] = 'web2py'
+ response.include_meta()
+ self.assertEqual(response.body.getvalue(), '\n\n')
+ response = Response()
+ response.meta[u'meta_dict'] = {u'tag_name':'tag_value'}
+ response.include_meta()
+ self.assertEqual(response.body.getvalue(), '\n\n')
+