|Subject:||Require one out of several dependencies|
Sometimes, there are several ways to do one thing and you want to give the user the flexibility to use any one of those. Currently, using 'requires' or 'requires_external_bin', there is no way to specify that one requires only one program or module out of several ones. Consider that my script needs the dependencies A, B or C. I can write: requires_external_bin 'A'; requires_external_bin 'B'; requires_external_bin 'C'; But that forces the user to have A, B, and C installed, when only one of them is needed. I could also write: requires_external_bin 'A'; But that is forcing the user to have A installed, whereas he may only be interested in using B or C. Ideally, instead of 'requires_external_bin', I would like to use something like: requires_external_bin_any ('A','B','C'); The user would be required to provide only A, B or C. Similarly, it may be valuable to use a similar mechanism for 'requires', e,g, 'requires_any'.