code: def validate_version(logger: logging.Logger):
      def task():
          try:
              current_version = parse(__version__)
              latest_version = get_version("upgini")
              if current_version < latest_version:  # type: ignore
                  msg = bundle.get("version_warning").format(
                      current_version, latest_version
                  )
                  logger.warning(msg)
                  print(msg)
          except Exception:
              logger.warning(
                  "Failed to validate version", exc_info=True
              )
  
      thread = threading.Thread(target=task)
      thread.start()
  
file_path: upgini/src/upgini/version_validator.py
imports: import json
  import requests
  import threading
  import logging
  from upgini.http import __version__
  from upgini.resource_bundle import bundle
label_desc: Use image node_id 2 for calling a global function with example usage: validate_version(logger) without return types