class Dependabot::Uv::FileFetcher
def parse_requirement_path_dependencies(req_file)
def parse_requirement_path_dependencies(req_file) # If this is a pip-compile lockfile, rely on whatever path dependencies we found in the main manifest return [] if requirements_in_file_matcher.compiled_file?(req_file) uneditable_reqs = req_file.content .scan(/(?<name>^['"]?(?:file:)?(?<path>\..*?)(?=\[|#|'|"|$))/) .filter_map do |n, p| { name: n.strip, path: p.strip, file: req_file.name } unless p.include?("://") end editable_reqs = req_file.content .scan(/(?<name>^(?:-e)\s+['"]?(?:file:)?(?<path>.*?)(?=\[|#|'|"|$))/) .filter_map do |n, p| { name: n.strip, path: p.strip, file: req_file.name } unless p.include?("://") || p.include?("git@") end uneditable_reqs + editable_reqs end