Blob Blame Raw
diff -Naur TurboGears2-2.3.0dev.orig/setup.py TurboGears2-2.3.0dev/setup.py
--- TurboGears2-2.3.0dev.orig/setup.py	2013-04-03 13:56:25.379430738 -0400
+++ TurboGears2-2.3.0dev/setup.py	2013-04-03 13:56:32.489528286 -0400
@@ -31,7 +31,6 @@
 if py_version[0] == 2:
     test_requirements.extend(['TurboKid >= 1.0.4',
                               'Kajiki >= 0.2.2',
-                              'Chameleon < 2.0a',
                               'simplegeneric',
                               'Formencode',
                               'routes',
diff -Naur TurboGears2-2.3.0dev.orig/tests/test_configuration.py TurboGears2-2.3.0dev/tests/test_configuration.py
--- TurboGears2-2.3.0dev.orig/tests/test_configuration.py	2013-04-03 13:56:25.378430724 -0400
+++ TurboGears2-2.3.0dev/tests/test_configuration.py	2013-04-03 13:57:20.414184664 -0400
@@ -217,12 +217,6 @@
     def test_setup_sa_auth_backend(self):
         self.config.setup_sa_auth_backend()
 
-    def test_setup_chameleon_genshi_renderer(self):
-        if PY3: raise SkipTest()
-
-        self.config.paths.templates = 'template_path'
-        self.config.setup_chameleon_genshi_renderer()
-
     def test_setup_kajiki_renderer(self):
         if PY3: raise SkipTest()
 
@@ -910,4 +904,4 @@
         conf = AppConfig(minimal=True, root_controller=RootController())
         conf.package = sys.modules[__name__]
 
-        app = conf.make_wsgi_app()
\ No newline at end of file
+        app = conf.make_wsgi_app()
diff -Naur TurboGears2-2.3.0dev.orig/tests/test_stack/__init__.py TurboGears2-2.3.0dev/tests/test_stack/__init__.py
--- TurboGears2-2.3.0dev.orig/tests/test_stack/__init__.py	2013-04-03 13:56:25.374430669 -0400
+++ TurboGears2-2.3.0dev/tests/test_stack/__init__.py	2013-04-03 13:57:38.053425778 -0400
@@ -16,7 +16,7 @@
         #First we setup some base values that we know will work
         self.renderers = ['genshi', 'mako', 'jinja','json']
         if not PY3:
-            self.renderers.extend(['chameleon_genshi', 'kajiki'])
+            self.renderers.extend(['kajiki'])
 
         self.render_functions = tg.util.Bunch()
         self.package = tests.test_stack
diff -Naur TurboGears2-2.3.0dev.orig/tests/test_stack/rendering/controllers/root.py TurboGears2-2.3.0dev/tests/test_stack/rendering/controllers/root.py
--- TurboGears2-2.3.0dev.orig/tests/test_stack/rendering/controllers/root.py	2013-04-03 13:56:25.376430697 -0400
+++ TurboGears2-2.3.0dev/tests/test_stack/rendering/controllers/root.py	2013-04-03 14:01:17.829412104 -0400
@@ -261,14 +261,6 @@
         i18n.set_temporary_lang("de")
         return {}
 
-    @expose('chameleon_genshi:index.html')
-    def chameleon_genshi_index(self):
-        return {}
-
-    @expose('chameleon_genshi:genshi_inherits.html')
-    def chameleon_genshi_inherits(self):
-        return {}
-
     @expose('mako:mako_noop.mak')
     def mako_index(self):
         return {}
@@ -277,10 +269,6 @@
     def mako_inherits(self):
         return {}
 
-    @expose('chameleon_genshi:tests.test_stack.rendering.templates.index')
-    def chameleon_index_dotted(self):
-        return {}
-
     @expose('kajiki:tests.test_stack.rendering.templates.index')
     def kajiki_index_dotted(self):
         return {}
diff -Naur TurboGears2-2.3.0dev.orig/tests/test_stack/rendering/test_dotted_rendering.py TurboGears2-2.3.0dev/tests/test_stack/rendering/test_dotted_rendering.py
--- TurboGears2-2.3.0dev.orig/tests/test_stack/rendering/test_dotted_rendering.py	2013-04-03 13:56:25.375430683 -0400
+++ TurboGears2-2.3.0dev/tests/test_stack/rendering/test_dotted_rendering.py	2013-04-03 13:58:32.815172826 -0400
@@ -19,14 +19,6 @@
                              )
     return app_from_config(base_config)
 
-def test_default_chameleon_genshi_renderer():
-    if PY3: raise SkipTest()
-
-    app = setup_noDB()
-    resp = app.get('/chameleon_index_dotted')
-    assert "Welcome" in resp, resp
-    assert "TurboGears" in resp, resp
-
 def test_default_kajiki_renderer():
     if PY3: raise SkipTest()
 
diff -Naur TurboGears2-2.3.0dev.orig/tests/test_stack/rendering/test_rendering.py TurboGears2-2.3.0dev/tests/test_stack/rendering/test_rendering.py
--- TurboGears2-2.3.0dev.orig/tests/test_stack/rendering/test_rendering.py	2013-04-03 13:56:25.375430683 -0400
+++ TurboGears2-2.3.0dev/tests/test_stack/rendering/test_rendering.py	2013-04-03 13:59:11.121694138 -0400
@@ -256,38 +256,6 @@
     assert "from sub-template: sub.frombottom" in resp
     assert "Master template" in resp
 
-def test_chameleon_genshi_base():
-    if PY3: raise SkipTest()
-
-    app = setup_noDB()
-    resp = app.get('/chameleon_genshi_index')
-    assert ("<p>TurboGears 2 is rapid web application development toolkit"
-        " designed to make your life easier.</p>") in resp
-
-def test_chameleon_genshi_inheritance():
-    if PY3: raise SkipTest()
-
-    try:
-        import lxml
-    except ImportError:
-        # match templates need lxml, but since they don're really work anyway
-        # (at least not fully compatible with Genshi), we just skip this test
-        return
-    app = setup_noDB()
-    try:
-        resp = app.get('/chameleon_genshi_inherits')
-    except NameError as e:
-        # known issue with chameleon.genshi 1.0
-        if 'match_templates' not in str(e):
-            raise
-    except AttributeError as e:
-        # known issue with chameleon.genshi 1.3
-        if 'XPathResult' not in str(e):
-            raise
-    else:
-        assert "Inheritance template" in resp
-        assert "Master template" in resp
-
 def test_jinja_autoload():
     app = setup_noDB()
     resp = app.get('/jinja_autoload', status=500)
diff -Naur TurboGears2-2.3.0dev.orig/tg/configuration/app_config.py TurboGears2-2.3.0dev/tg/configuration/app_config.py
--- TurboGears2-2.3.0dev.orig/tg/configuration/app_config.py	2013-04-03 13:56:25.365430546 -0400
+++ TurboGears2-2.3.0dev/tg/configuration/app_config.py	2013-04-03 14:00:22.104657686 -0400
@@ -512,25 +512,6 @@
 
         self.render_functions.mako = render_mako
 
-    def setup_chameleon_genshi_renderer(self): #pragma: no cover
-        """Setup a renderer and loader for the chameleon.genshi engine."""
-        from tg.render import RenderChameleonGenshi
-
-        try:
-            import chameleon.genshi.loader
-        except ImportError:
-            return False
-
-        if config.get('use_dotted_templatenames', True):
-            from tg.dottednames.chameleon_genshi_lookup \
-                import ChameleonGenshiTemplateLoader as TemplateLoader
-        else:
-            from chameleon.genshi.loader import TemplateLoader
-        loader = TemplateLoader(search_path=self.paths.templates,
-                                auto_reload=self.auto_reload_templates)
-
-        self.render_functions.chameleon_genshi = RenderChameleonGenshi(loader)
-
     def setup_genshi_renderer(self):
         """Setup a renderer and loader for Genshi templates.
 
diff -Naur TurboGears2-2.3.0dev.orig/tg/dottednames/chameleon_genshi_lookup.py TurboGears2-2.3.0dev/tg/dottednames/chameleon_genshi_lookup.py
--- TurboGears2-2.3.0dev.orig/tg/dottednames/chameleon_genshi_lookup.py	2013-04-03 13:56:25.369430600 -0400
+++ TurboGears2-2.3.0dev/tg/dottednames/chameleon_genshi_lookup.py	1969-12-31 19:00:00.000000000 -0500
@@ -1,29 +0,0 @@
-"""Chameleon.Genshi template loader that supports dotted names."""
-
-from chameleon.genshi.loader import TemplateLoader
-
-from tg import config
-
-
-class ChameleonGenshiTemplateLoader(TemplateLoader):
-    """Chameleon.Genshi template loader supporting dotted filenames.
-
-    Supports zipped applications and dotted filenames as well as path names.
-
-    """
-
-    template_extension = '.html'
-
-    def get_dotted_filename(self, filename):
-        if not filename.endswith(self.template_extension):
-            finder = config['tg.app_globals'].dotted_filename_finder
-            filename = finder.get_dotted_filename(
-                    template_name=filename,
-                    template_extension=self.template_extension)
-        return filename
-
-    def load(self, filename, format='xml'):
-        """Actual loader function."""
-        return TemplateLoader.load(
-                self, self.get_dotted_filename(filename), format)
-
diff -Naur TurboGears2-2.3.0dev.orig/tg/render.py TurboGears2-2.3.0dev/tg/render.py
--- TurboGears2-2.3.0dev.orig/tg/render.py	2013-04-03 13:56:25.367430573 -0400
+++ TurboGears2-2.3.0dev/tg/render.py	2013-04-03 14:00:45.032968298 -0400
@@ -222,47 +222,6 @@
         return render_func()
 
 
-class RenderChameleonGenshi(object): #pragma: no cover
-    """Singleton that can be called as the Chameleon-Genshi render function."""
-
-    format_for_content_type = {
-        'text/plain': 'text',
-        'text/css': 'text',
-        'text/html': 'xml',
-        'text/xml': 'xml',
-        'application/xml': 'xml',
-        'application/xhtml+xml': 'xml',
-        'application/atom+xml': 'xml',
-        'application/rss+xml': 'xml',
-        'application/soap+xml': 'xml',
-        'image/svg+xml': 'xml'}
-
-    def __init__(self, loader):
-        self.load_template = loader.load
-
-    def __call__(self, template_name, template_vars, **kwargs):
-        """Render the template_vars with the Chameleon-Genshi template."""
-        config = tg.config._current_obj()
-
-        # Gets template format from content type or from config options
-        format = kwargs.get('format')
-        if not format:
-            format = self.format_for_content_type.get(tg.response.content_type)
-            if not format:
-                format = config.get('templating.chameleon.genshi.format')
-                if not format:
-                    format = config.get('templating.genshi.method')
-                    if not format or format not in ('xml', 'text'):
-                        format = 'xml'
-
-        def render_template():
-            template = self.load_template(template_name, format=format)
-            return Markup(template.render(**template_vars))
-
-        return cached_template(template_name, render_template,
-                               ns_options=('doctype', 'method'), **kwargs)
-
-
 class RenderGenshi(object):
     """Singleton that can be called as the Genshi render function."""