Changed ``pre_commit`` hook signature.
The hook's signature is now
::
hook(local, master, old_revno, old_revid, new_revno, new_revid,
affected_ids, future_revision_tree)
``affected_ids`` is a dictionary of (change_type, ids). change_type is
a string describing the change (e.g. 'added', 'deleted', 'modified'), and
ids is a list of inventory entry ids.
Hooks can get an added file easier than before:
::
for id in affected_ids.get('added', []):
if future_revision_tree.kind(id) == 'file':
file = future_revision_tree.get_file(id)
...