]> git.decadent.org.uk Git - dak.git/blobdiff - daklib/dbconn.py
daklog: Add username in every log line
[dak.git] / daklib / dbconn.py
index 3aa7b8e2458965f152ede8dd57b361bc72bd338a..8ee9076874d09a0d785924cb4bf3eb891e9b41b9 100755 (executable)
@@ -64,7 +64,7 @@ def session_wrapper(fn):
         session = kwargs.get('session')
 
         # No session specified as last argument or in kwargs, create one.
-        if session is None or len(args) == len(getargspec(fn)[0]) - 1:
+        if session is None and len(args) <= len(getargspec(fn)[0]) - 1:
             private_transaction = True
             kwargs['session'] = DBConn().session()
 
@@ -75,6 +75,9 @@ def session_wrapper(fn):
                 # We created a session; close it.
                 kwargs['session'].close()
 
+    wrapped.__doc__ = fn.__doc__
+    wrapped.func_name = fn.func_name
+
     return wrapped
 
 ################################################################################
@@ -165,7 +168,7 @@ __all__.append('Archive')
 @session_wrapper
 def get_archive(archive, session=None):
     """
-    returns database id for given c{archive}.
+    returns database id for given C{archive}.
 
     @type archive: string
     @param archive: the name of the arhive
@@ -1901,7 +1904,7 @@ def get_suite(suite, session=None):
     generated if not supplied)
 
     @rtype: Suite
-    @return: Suite object for the requested suite name (None if not presenT)
+    @return: Suite object for the requested suite name (None if not present)
     """
 
     q = session.query(Suite).filter_by(suite_name=suite)