rebase: show warning when rebase creates no changes to commit
Similar to graft:
note: rebase of 6:
eea13746799a created no changes to commit
rebase: show more useful status information while rebasing
Show status messages while rebasing, similar to what graft do:
rebasing 12:
2647734878ef "fork" (tip)
This gives more context for the user when resolving conflicts.
tests: make 'saved backup' globbing less narrow in rebase tests
Globbing the hash made it harder to maintain tests with run-tests -i when it
was so far by the generated test output.
The hashes are stable and we just need to add a (glob).
tests: stabilise mq rebase tests
Prepare for including hashes in output ... and less globbing make the tests
easier to update.
test-graft: use strip extension instead of mq extension
It only needs strip, no reason to load all of mq.
transaction: remove the 'onabort' mechanism
It has no known users. If someones needs similar functionality, a new 'addabort'
method similar to 'addfinalize' should be added.
transaction: remove the redundant 'onclose' mechanism
It is superseded by the 'addfinalize' function and all its user have been
migrated.
fncache: document the fact fncache is outdate at hook run time
Using 'addfinalize' to generate 'fncache' means that no pending version of the
file will be generated for the hooks. We would have to use the
'addfilegenerator' method to get such result. However the 'fncachevfs' (who
decide that a write is necessary) have no access to the transaction to register
such file generation at add time. Having the transaction accessible to the 'vfs'
is too much trouble for no benefit. This outdated 'fncache' file at hook time is
not expected to be an issue.
The previous move from 'onclose' to 'addfinalize' had no impact on this timing.
I'm documenting it now because I looked at it.
fncache: drop dedicated 'onclose' function in favor of 'tr.addfinalize'
Now that we have a shiny generic mechanism, we can use it.