for item, (val, es) in self.error.items():
for e, h in es:
if h is None:
- I[item.fn][type(e)].append((e, item, val))
+ I[item.fn][type(e)].append((item, val, e))
else:
- E[h.rule][type(e)].append((e, item, val))
+ E[h.rule][type(e)].append((item, val, e))
# aggregation errors
for r in sorted(I, key=lambda r: r.index):
print >> out, 'Error(s) aggregating %s:' % r
for etype in I[r]:
print >> out, ' %s:' % etype.__name__
- for i, (e, item, value) in enumerate(sorted(I[r][etype])): # todo: probably don't want to show ten million errors
+ for i, (item, value, e) in enumerate(sorted(I[r][etype])):
if i >= 5:
print >> out, ' %s more ...' % (len(I[r][etype]) - i)
break
print >> out
for etype in E[r]:
print >> out, ' %s:' % etype.__name__
- for i, (e, item, value) in enumerate(sorted(E[r][etype])): # todo: probably don't want to show ten million errors
+ for i, (item, value, e) in enumerate(sorted(E[r][etype])):
if i >= 5:
print >> out, ' %s more ...' % (len(E[r][etype]) - i)
break
======
Error(s) aggregating a/1:
AggregatorError:
- `a(2)`: `:=` got conflicting values [1, 2] for rule index 8
`a(1)`: `:=` got conflicting values [1, 2] for rule index 8
+ `a(2)`: `:=` got conflicting values [1, 2] for rule index 8
Error(s) aggregating d/0:
TypeError:
`d`: unsupported operand type(s) for *: 'NoneType' and 'int'