Unnecessary loop, simply vectorise it:
```Python
val = np.array([major, minor])
if any(abs(val - np.round(val)) > 1e-5):
    raise ValueError('UMVERSION components must both be integers')
if any(val < 0):
    raise ValueError('UMVERSION components must both be positive')
```