X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=daklib%2Fdbconn.py;h=0db4caf1be04dd28809d9bea116df1267ae04c87;hb=83d12a41d882629937ed7fa6d65735d8f1e3e0a5;hp=9e1b29bbe44ca84845ac81d2a258059037c7cb52;hpb=98750a2310b9511630f28b62930772f3ed5b0961;p=dak.git diff --git a/daklib/dbconn.py b/daklib/dbconn.py index 9e1b29bb..0db4caf1 100755 --- a/daklib/dbconn.py +++ b/daklib/dbconn.py @@ -64,14 +64,22 @@ from dak_exceptions import NoSourceFieldError # Patch in support for the debversion field type so that it works during # reflection -class DebVersion(sqltypes.UserDefinedType): +try: + # that is for sqlalchemy 0.6 + UserDefinedType = sqltypes.UserDefinedType +except: + # this one for sqlalchemy 0.5 + UserDefinedType = sqltypes.TypeEngine + +class DebVersion(UserDefinedType): def get_col_spec(self): return "DEBVERSION" def bind_processor(self, dialect): return None - def result_processor(self, dialect): + # ' = None' is needed for sqlalchemy 0.5: + def result_processor(self, dialect, coltype = None): return None sa_major_version = sqlalchemy.__version__[0:3] @@ -1218,8 +1226,8 @@ __all__.append('add_poolfile') ################################################################################ class Fingerprint(object): - def __init__(self, *args, **kwargs): - pass + def __init__(self, fingerprint = None): + self.fingerprint = fingerprint def __repr__(self): return '' % self.fingerprint @@ -2668,8 +2676,9 @@ __all__.append('get_suite_src_formats') ################################################################################ class Uid(object): - def __init__(self, *args, **kwargs): - pass + def __init__(self, uid = None, name = None): + self.uid = uid + self.name = name def __eq__(self, val): if isinstance(val, str):