Parse "Atomic-Changes: HASH1, HASH2, ..." from a commit message.
(message: &str)
| 3591 | |
| 3592 | /// Parse "Atomic-Changes: HASH1, HASH2, ..." from a commit message. |
| 3593 | fn parse_atomic_changes_trailer(message: &str) -> Option<Vec<String>> { |
| 3594 | for line in message.lines() { |
| 3595 | let line = line.trim(); |
| 3596 | if let Some(rest) = line.strip_prefix("Atomic-Changes:") { |
| 3597 | let hashes: Vec<String> = rest |
| 3598 | .split(',') |
| 3599 | .map(|s| s.trim().to_string()) |
| 3600 | .filter(|s| !s.is_empty()) |
| 3601 | .collect(); |
| 3602 | if !hashes.is_empty() { |
| 3603 | return Some(hashes); |
| 3604 | } |
| 3605 | } |
| 3606 | } |
| 3607 | None |
| 3608 | } |
| 3609 | |
| 3610 | /// Parse a PR/MR number from a commit message. |
| 3611 | /// |