[migration] make 'session' object be a server-side Connection, not ClientConnection
I think this better corresponds to the previous behaviour. However,
that Connection does not have a cnxset, which should probably be changed
(for both interactive_shell and cmd_process_script).
try:
rtype, = __args__
except ValueError:
print 'USAGE: cubicweb-ctl shell <instance> detect_cycle.py -- <relation type>'
print
graph = {}
for fromeid, toeid in rql('Any X,Y WHERE X %s Y' % rtype):
graph.setdefault(fromeid, []).append(toeid)
from logilab.common.graph import get_cycles
for cycle in get_cycles(graph):
print 'cycle', '->'.join(str(n) for n in cycle)