<@UB2J9BQA0>: hm. so. i think that i’d like to do ...
# development
@hundreds-father-404: hm. so. i think that i’d like to do https://github.com/pantsbuild/pants/pull/15373 differently
in particular: putting transitive validation in a bunch of places doesn’t make sense as a long term solution. i got a little bit thrown off by
wanting to consume based on the assertion that the ICs were valid.
👍 1
instead, we basically want edgewise dependency validation whenever deps are computed… and that seems like something that we could add some pluggable functionality for… i.e., the python backend would install a union implementation to validate the deps of a target.
then, the code in ICs would still need to do a small amount of recursive walking (through generators, basically), but it wouldn’t need to validate the transitive graph.
…although… dangit. not quite. because we wouldn’t know whether the root ICs were actually valid until after the deprecation had triggered. so i think that this might be a “both” situation.
I think it's fine to distinguish between short-term bleh vs long-term goodness also And we can have the deprecation be only one cycle
i’ve just updated https://github.com/pantsbuild/pants/pull/15373 for this… feeling much better about it now.
👍 1