mapreduce.TaskID in branch-1 has these two constructors:
In branch-2, mapreduce.TaskID no longer has either of the above two constructors.
Also, mapreduce.TaskAttemptID in branch-1 has this constructor:
In branch-2, mapreduce.TaskAttemptID no longer his this constructor.
It looks like these constructors were probably removed because the boolean isMap was replaced by an enum, TaskType.
This means that any code that tries to use any of those constructors will not be binary or source compatible (in fact, the missing TaskAttemptID constructor calls one of the missing TaskID constructors).