Expand description
Compares a declared behaviour’s -callback surface between the two
trees: the case where a pick adds an implementation written against
the source’s callback set and lands on a target whose set is wider
or shape-different. First-party behaviours only, the ones no pin
snapshot covers. A legacy behaviour that declares its surface
through behaviour_info/1 has no -callback forms and is
invisible here, which withholds.
Functions§
- analyse_
behaviour_ callbacks - Flag callbacks the target’s version of a declared behaviour
requires that the source’s does not declare (an implementation
written against the source is missing them), and shared callbacks
whose normalized signatures disagree. Runs only for behaviours the
added lines declare; an unreadable side withholds silently, and a
callback the source requires but the target lacks is dead code, not
a backport risk. One pass per
(file, behaviour).