code: def replace_occurrences(
      files: List[Path], pattern: str, repl: str
  ) -> None:
      pattern = re.compile(pattern)
      for f in files:
          old_text = f.read_text()
          if not pattern.search(old_text):
              continue
          new_text = pattern.sub(repl, old_text)
          f.write_text(new_text)
  
file_path: mlflow/dev/update_mlflow_versions.py
imports: import re
  from pathlib import Path
  from typing import List
  import click
  from packaging.version import Version
label_desc: Use image node_id 3 for calling a global function with example usage: replace_occurrences(files, pattern, repl) without return types