(candidate pluginFile, current pluginFile, desiredVersion string)
| 190 | } |
| 191 | |
| 192 | func pluginFilePreferredForDesired(candidate pluginFile, current pluginFile, desiredVersion string) bool { |
| 193 | desiredVersion = normalizePluginDesiredVersion(desiredVersion) |
| 194 | if desiredVersion != "" { |
| 195 | candidateMatches := candidate.Version == desiredVersion |
| 196 | currentMatches := current.Version == desiredVersion |
| 197 | if candidateMatches != currentMatches { |
| 198 | return candidateMatches |
| 199 | } |
| 200 | } |
| 201 | return pluginFilePreferred(candidate, current) |
| 202 | } |
| 203 | |
| 204 | func pluginFilePreferred(candidate pluginFile, current pluginFile) bool { |
| 205 | if candidate.Version == "" { |
no test coverage detected