Overall, I think using an enum is the happiest situation. It's a slightly awkward API, to be sure, but not very awkward in the scheme of things, and it's better than needing to wait a long time for a final resolution.
Thanks for the clarification, I hadn't considered the use of new numpy code with older versions of numpy.
The enum values would be IF_NEEDED=0, (corresponding to False), ALWAYS=1 (corresponding to True), NEVER=2, right? In which namespace should they live: