docs: def which(program, ignore_own_venv=False):
      """
      :param str|None program: Program name to find via env var PATH
      :param bool ignore_own_venv: If True, do not resolve to executables in current venv
      :return str|None: Full path to program, if one exists and is executable
      """
      if not program:
          return None
      if os.path.isabs(program):
          return program if is_executable(program) else None
      for p in os.environ.get("PATH", "").split(":"):
          fp = os.path.join(p, program)
          if (not ignore_own_venv or not fp.startswith(sys.prefix)) and is_executable(fp):
              return fp
      return None