patch: simplify hunk extents parsing
Do not capture unwanted groups in regexps
diff: --ignore-blank-lines was too enthusiastic
It was ignoring changes from:
ab
to:
a
b
graft: disallow grafting grafted csets in specific situations (
issue3091)
In particular, we do not allow:
- grafting an already grafted cset onto its original branch
- grafting already grafted csets with the same origin onto each other