in bunch-cli/src/main/kotlin/org/jetbrains/bunches/bunchFile.kt [67:88]
fun readUpdatePairsFromFile(path: String): Result<UpdateInfo> {
val file = File(path, BUNCH_FILE_NAME)
if (!file.exists()) {
return Result.error("File '${file.canonicalPath}' doesn't exist.")
}
val lines = file.readLines().map { it.trim() }.filter { it.isNotEmpty() }
val currentBranchSuffix = lines.firstOrNull()
if (currentBranchSuffix == null) {
return Result.error("First line in '${file.canonicalPath}' should contain current branch name")
}
val rules = ArrayList<List<String>>()
val branchRules = lines.drop(1)
for (branchRule in branchRules) {
rules.add((branchRule + "_$currentBranchSuffix").split("_").reversed())
}
return Result.success(UpdateInfo(currentBranchSuffix, rules))
}