use restrict version upper bound mechanism to exclude incompatible versions of geiger