static Future<Optional<String>> newUpdateChecker(
      ProjectProperties projectProperties, GlobalConfig globalConfig, Log logger) {
    if (projectProperties.isOffline()
        || !logger.isInfoEnabled()
        || globalConfig.isDisableUpdateCheck()) {
      return Futures.immediateFuture(Optional.empty());
    }
    ExecutorService executorService = Executors.newSingleThreadExecutor();
    try {
      return UpdateChecker.checkForUpdate(
          executorService,
          VERSION_URL,
          projectProperties.getToolName(),
          projectProperties.getToolVersion(),
          projectProperties::log);
    } finally {
      executorService.shutdown();
    }
  }
Describes a minimum required version or version range for Jib.
jib-maven-plugin/src/main/java/com/google/cloud/tools/jib/maven/MojoCommon.java