summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/genshi/files/genshi-0.7-issue602.patch')
-rw-r--r--dev-python/genshi/files/genshi-0.7-issue602.patch114
1 files changed, 0 insertions, 114 deletions
diff --git a/dev-python/genshi/files/genshi-0.7-issue602.patch b/dev-python/genshi/files/genshi-0.7-issue602.patch
deleted file mode 100644
index d7f0b77fa921..000000000000
--- a/dev-python/genshi/files/genshi-0.7-issue602.patch
+++ /dev/null
@@ -1,114 +0,0 @@
-From 1acbd00b4961164edc8a185458ba4a433bedbceb Mon Sep 17 00:00:00 2001
-From: SVN-Git Migration <python-modules-team@lists.alioth.debian.org>
-Date: Thu, 8 Oct 2015 09:13:46 -0700
-Subject: Fix Python 3.5 compatibility issues.
-
-Origin: http://genshi.edgewall.org/attachment/ticket/602/t602.diff
-Bug: http://genshi.edgewall.org/ticket/602
-Forwarded: not-needed
-
-Patch-Name: issue602.patch
----
- genshi/filters/i18n.py | 6 ++++--
- genshi/template/astutil.py | 14 +++++++++++---
- genshi/template/directives.py | 20 ++++++++++++++------
- genshi/template/eval.py | 5 +++++
- 4 files changed, 34 insertions(+), 11 deletions(-)
-
-diff --git a/genshi/filters/i18n.py b/genshi/filters/i18n.py
-index b724956..dfb52b8 100644
---- a/genshi/filters/i18n.py
-+++ b/genshi/filters/i18n.py
-@@ -1187,8 +1187,10 @@ def extract_from_code(code, gettext_functions):
- elif arg:
- strings.append(None)
- [_add(arg) for arg in node.args]
-- _add(node.starargs)
-- _add(node.kwargs)
-+ if hasattr(node, 'starargs'):
-+ _add(node.starargs)
-+ if hasattr(node, 'kwargs'):
-+ _add(node.kwargs)
- if len(strings) == 1:
- strings = strings[0]
- else:
-diff --git a/genshi/template/astutil.py b/genshi/template/astutil.py
-index a4c21c8..b24f728 100644
---- a/genshi/template/astutil.py
-+++ b/genshi/template/astutil.py
-@@ -135,6 +135,10 @@ class ASTCodeGenerator(object):
- def visit_arg(self, node):
- self._write(node.arg)
-
-+ def visit_Starred(self, node):
-+ self._write('*')
-+ self.visit(node.value)
-+
- # FunctionDef(identifier name, arguments args,
- # stmt* body, expr* decorator_list)
- def visit_FunctionDef(self, node):
-@@ -648,9 +652,13 @@ class ASTCodeGenerator(object):
- if not first:
- self._write(', ')
- first = False
-- # keyword = (identifier arg, expr value)
-- self._write(keyword.arg)
-- self._write('=')
-+ if not keyword.arg:
-+ # Python 3.5+ star-star args
-+ self._write('**')
-+ else:
-+ # keyword = (identifier arg, expr value)
-+ self._write(keyword.arg)
-+ self._write('=')
- self.visit(keyword.value)
- if getattr(node, 'starargs', None):
- if not first:
-diff --git a/genshi/template/directives.py b/genshi/template/directives.py
-index 7301c2d..1f70ef6 100644
---- a/genshi/template/directives.py
-+++ b/genshi/template/directives.py
-@@ -266,13 +266,21 @@ class DefDirective(Directive):
- if isinstance(ast, _ast.Call):
- self.name = ast.func.id
- for arg in ast.args:
-- # only names
-- self.args.append(arg.id)
-+ if hasattr(_ast, 'Starred') and isinstance(arg, _ast.Starred):
-+ # Python 3.5+
-+ self.star_args = arg.value.id
-+ else:
-+ # only names
-+ self.args.append(arg.id)
- for kwd in ast.keywords:
-- self.args.append(kwd.arg)
-- exp = Expression(kwd.value, template.filepath,
-- lineno, lookup=template.lookup)
-- self.defaults[kwd.arg] = exp
-+ if kwd.arg is None:
-+ # Python 3.5+
-+ self.dstar_args = kwd.value.id
-+ else:
-+ self.args.append(kwd.arg)
-+ exp = Expression(kwd.value, template.filepath,
-+ lineno, lookup=template.lookup)
-+ self.defaults[kwd.arg] = exp
- if getattr(ast, 'starargs', None):
- self.star_args = ast.starargs.id
- if getattr(ast, 'kwargs', None):
-diff --git a/genshi/template/eval.py b/genshi/template/eval.py
-index 89aec49..c00cfcb 100644
---- a/genshi/template/eval.py
-+++ b/genshi/template/eval.py
-@@ -593,6 +593,11 @@ class TemplateASTTransformer(ASTTransformer):
- finally:
- self.locals.pop()
-
-+ # Only used in Python 3.5+
-+ def visit_Starred(self, node):
-+ node.value = self.visit(node.value)
-+ return node
-+
- def visit_Name(self, node):
- # If the name refers to a local inside a lambda, list comprehension, or
- # generator expression, leave it alone