see :ref:`use_alter`.
"""
- def __init__(self, message, cycles, edges):
- message += " Cycles: %r all edges: %r" % (cycles, edges)
+ def __init__(self, message, cycles, edges, msg=None):
+ if msg is None:
+ message += " Cycles: %r all edges: %r" % (cycles, edges)
+ else:
+ message = msg
SQLAlchemyError.__init__(self, message)
self.cycles = cycles
self.edges = edges
+ def __reduce__(self):
+ return self.__class__, (None, self.cycles,
+ self.edges, self.args[0])
+
class CompileError(SQLAlchemyError):
"""Raised when an error occurs during SQL compilation"""
{"foo":"bar"},
orig),
tsa.exc.NoReferencedTableError("message", "tname"),
- tsa.exc.NoReferencedColumnError("message", "tname", "cname")
+ tsa.exc.NoReferencedColumnError("message", "tname", "cname"),
+ tsa.exc.CircularDependencyError("some message", [1, 2, 3], [(1, 2), (3, 4)]),
):
for loads, dumps in picklers():
repickled = loads(dumps(sa_exc))