would it be possible to have, say, @feature("name") and @noFeature("name")?
the usecase would mainly be to avoid dependencies that are only required for uncommonly used features
(… so it would require support on bsconfig’s side too, which isn’t ideal but oh well)
to be fair, there would be… a number of problems with implementing it nicely - the biggest one being that to validate every combination of features, you’d need to compile it 2^numberOfFeatures times
also i’m not sure whether it’s even possible to have, say, two declarations of the same function, e.g.:
// contrived example
@feature("a") let foo: (string) => t = "%identity"
@noFeature("a") let foo: (int) => t = "%identity"