(scc []*objectEntry)
| 503 | } |
| 504 | |
| 505 | func minSortKey(scc []*objectEntry) string { |
| 506 | if len(scc) == 0 { |
| 507 | return "" |
| 508 | } |
| 509 | best := scc[0].sortKey() |
| 510 | for _, o := range scc[1:] { |
| 511 | if k := o.sortKey(); k < best { |
| 512 | best = k |
| 513 | } |
| 514 | } |
| 515 | return best |
| 516 | } |
| 517 | |
| 518 | // installOne attempts a real install; on failure installs a pseudo at the |
| 519 | // same slot. All outcomes are recorded in l.degraded / l.trulyBroken; this |
no test coverage detected