> To be clear, that enhancement only works if w...
# development
w
To be clear, that enhancement only works if we make a breaking change to how ICs work: they must include the ICs of all transitive deps, not just the source files themselves. Is that right?
yea, i think that this requires a deprecation cycle. but it’s likely that the optimization could be applied even before the deprecation cycle has completed (because the check for whether the graph is valid is sufficient to either warn or enable the optimization).
With binaries and tests, you mentioned that seems more reasonable to ask. I do think we’d need the same restriction on all 
python_library
 targets too, given how MyPy and Pylint operate on them
yes, but i think that it is a valid constraint in all cases. it makes the constraints match reality: if a target’s dependencies cannot be used with X, then it also cannot be used with X.