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.
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.
05/11/2022, 1:08 AM
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