summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulien Jehannet <julien.jehannet@logilab.fr>2009-01-19 20:50:28 +0100
committerJulien Jehannet <julien.jehannet@logilab.fr>2009-01-19 20:50:28 +0100
commit1d7e10af48672a2b4ba2d4512d2a106280b90717 (patch)
treec89c1afe4b235ae5a556f2cc06dda6dfbdf5353d
parente2c18aeb354c4b1396a42bfd074042e477ae665d (diff)
parenta638d8e440c40ebf8ef211f5bfffa3cb075f81c1 (diff)
downloadlogilab-common-1d7e10af48672a2b4ba2d4512d2a106280b90717.tar.gz
(merge)
-rw-r--r--ChangeLog2
-rw-r--r--adbh.py2
-rw-r--r--test/input/func_noerror_decorator_scope.py16
-rw-r--r--ureports/docbook_writer.py4
-rw-r--r--ureports/html_writer.py8
5 files changed, 25 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index fedda05..fc54f21 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -92,7 +92,7 @@ ChangeLog for logilab.common
- added assertDirEquals
- various failure ouput improvement
- * umessage: umessage.date() mayreturn unparsage string as is instead of None
+ * umessage: umessage.date() may return unparsable string as is instead of None
* compat: adds a max function taking 'key' as keyword argument as in 2.5
diff --git a/adbh.py b/adbh.py
index 7374172..377ddfb 100644
--- a/adbh.py
+++ b/adbh.py
@@ -107,6 +107,7 @@ class _GenericAdvFuncHelper:
backend_name = None # overriden in subclasses ('postgres', 'sqlite', etc.)
needs_from_clause = False
union_parentheses_support = True
+ intersect_all_support = True
users_support = True
groups_support = True
ilike_support = True
@@ -426,6 +427,7 @@ class _SqliteAdvFuncHelper(_GenericAdvFuncHelper):
users_support = groups_support = False
ilike_support = False
union_parentheses_support = False
+ intersect_all_support = False
def sql_create_index(self, table, column, unique=False):
idx = self._index_name(table, column, unique)
diff --git a/test/input/func_noerror_decorator_scope.py b/test/input/func_noerror_decorator_scope.py
new file mode 100644
index 0000000..1d21522
--- /dev/null
+++ b/test/input/func_noerror_decorator_scope.py
@@ -0,0 +1,16 @@
+"""Test that decorators sees the class namespace - just like
+function default values does but function body doesn't.
+
+https://www.logilab.net/elo/ticket/3711 - bug finding decorator arguments
+https://www.logilab.net/elo/ticket/5626 - name resolution bug inside classes
+"""
+
+class Test:
+
+ ident = lambda x: x
+
+ @ident(ident)
+ def f(self, val=ident(7), f=ident):
+ return f(val)
+
+print Test().f()
diff --git a/ureports/docbook_writer.py b/ureports/docbook_writer.py
index fe8fc79..8848132 100644
--- a/ureports/docbook_writer.py
+++ b/ureports/docbook_writer.py
@@ -23,7 +23,7 @@ class DocbookWriter(HTMLWriter):
def begin_format(self, layout):
"""begin to format a layout"""
super(HTMLWriter, self).begin_format(layout)
- if self.snipet is None:
+ if self.snippet is None:
self.writeln('<?xml version="1.0" encoding="ISO-8859-1"?>')
self.writeln("""
<book xmlns:xi='http://www.w3.org/2001/XInclude'
@@ -32,7 +32,7 @@ class DocbookWriter(HTMLWriter):
def end_format(self, layout):
"""finished to format a layout"""
- if self.snipet is None:
+ if self.snippet is None:
self.writeln('</book>')
def visit_section(self, layout):
diff --git a/ureports/html_writer.py b/ureports/html_writer.py
index 3169727..930aff7 100644
--- a/ureports/html_writer.py
+++ b/ureports/html_writer.py
@@ -22,9 +22,9 @@ from logilab.common.ureports import BaseWriter
class HTMLWriter(BaseWriter):
"""format layouts as HTML"""
- def __init__(self, snipet=None):
+ def __init__(self, snippet=None):
super(HTMLWriter, self).__init__()
- self.snipet = snipet
+ self.snippet = snippet
def handle_attrs(self, layout):
"""get an attribute string from layout member attributes"""
@@ -40,13 +40,13 @@ class HTMLWriter(BaseWriter):
def begin_format(self, layout):
"""begin to format a layout"""
super(HTMLWriter, self).begin_format(layout)
- if self.snipet is None:
+ if self.snippet is None:
self.writeln('<html>')
self.writeln('<body>')
def end_format(self, layout):
"""finished to format a layout"""
- if self.snipet is None:
+ if self.snippet is None:
self.writeln('</body>')
self.writeln('</html>')