code: def compute_fingerprint(self, target):
      
      if isinstance(target, UnpackedWheels):
        hasher = sha1()
        for cache_key in sorted(req.cache_key() for req in target.all_imported_requirements):
          hasher.update(cache_key.encode('utf-8'))
        hasher.update(target.payload.fingerprint().encode('utf-8'))
        return hasher.hexdigest() if PY3 else hasher.hexdigest().decode('utf-8')
      return None
docs: UnpackedWheels targets need to be re-unpacked if any of its configuration changes or any of
      the jars they import have changed.