Currently macrome assumes that all generated files are under version control. It should also be possible to do in-place building of files that are not under VCS. To implement this we will need to subscribe to some set of non-vcs changes and subscribe to them with defer instead of drop when the vsc_lock_held state is present. The main question is how we'll target each subscription. Currently watchman isn't given the targeting criteria which means there's no way to make the distinction at that level.
It seems to me that it will be appropriate to make the distinction between VCS and non-VCS generated assets at the generator level, i.e. allow generators to specify whether to drop or defer with regard to the vcs lock. The problem with this is that we currently only have one subscription, so we can't take advantage of that kind of power at a more granular level.
Currently macrome assumes that all generated files are under version control. It should also be possible to do in-place building of files that are not under VCS. To implement this we will need to subscribe to some set of non-vcs changes and subscribe to them with
deferinstead ofdropwhen thevsc_lock_heldstate is present. The main question is how we'll target each subscription. Currently watchman isn't given the targeting criteria which means there's no way to make the distinction at that level.It seems to me that it will be appropriate to make the distinction between VCS and non-VCS generated assets at the generator level, i.e. allow generators to specify whether to
dropordeferwith regard to the vcs lock. The problem with this is that we currently only have one subscription, so we can't take advantage of that kind of power at a more granular level.