in graph/preprocessor.go [302:325]
func FindVersion(data []byte) string {
reader := bytes.NewReader(data)
scanner := bufio.NewScanner(reader)
scanner.Split(bufio.ScanLines)
for scanner.Scan() {
text := scanner.Text()
trimmedText := strings.TrimSpace(text)
// Skip comments and just whitespace.
if trimmedText == "" || strings.HasPrefix(trimmedText, "#") {
continue
}
// use text instead of trimmedText since ' version: ' is also invalid.
if strings.HasPrefix(strings.TrimLeft(text, "'\""), versionKey) {
tokens := strings.SplitN(text, ":", 2)
if len(tokens) == 2 && strings.Trim(strings.TrimSpace(tokens[0]), "'\"") == versionKey {
return strings.Trim(strings.TrimSpace(tokens[1]), "'\"")
}
}
}
return ""
}