docs: def configure():
      """
      Setup various global variables based on environment variables.
      """
      global _DOWNLOADS_DIR
      global _CURRENT_RELEASE
  
      _CURRENT_RELEASE = None
      _DOWNLOADS_DIR = environ.get("MHCFLURRY_DOWNLOADS_DIR")
      if not _DOWNLOADS_DIR:
          metadata = get_downloads_metadata()
          _CURRENT_RELEASE = environ.get("MHCFLURRY_DOWNLOADS_CURRENT_RELEASE")
          if not _CURRENT_RELEASE:
              _CURRENT_RELEASE = metadata['current-release']
  
          current_release_compatability = (
              metadata["releases"][_CURRENT_RELEASE]["compatibility-version"])
          current_compatability = metadata["current-compatibility-version"]
          if current_release_compatability != current_compatability:
              logging.warn(
                  "The specified downloads are not compatible with this version "
                  "of the MHCflurry codebase. Downloads: release %s, "
                  "compatability version: %d. Code compatability version: %d" % (
                      _CURRENT_RELEASE,
                      current_release_compatability,
                      current_compatability))
  
          data_dir = environ.get("MHCFLURRY_DATA_DIR")
          if not data_dir:
              # increase the version every time we make a breaking change in
              # how the data is organized. For changes to e.g. just model
              # serialization, the downloads release numbers should be used.
              data_dir = user_data_dir("mhcflurry", version="4")
          _DOWNLOADS_DIR = join(data_dir, _CURRENT_RELEASE)
  
      logging.debug("Configured MHCFLURRY_DOWNLOADS_DIR: %s" % _DOWNLOADS_DIR)