MCPcopy Index your code
hub / github.com/modelcontextprotocol/registry / looksLikeVersionRange

Function looksLikeVersionRange

internal/validators/validators.go:373–393  ·  view source on GitHub ↗

looksLikeVersionRange detects common semver range syntaxes and wildcard patterns. that indicate the value is not a single, specific version. Examples that should return true: - "^1.2.3", - "~1.2.3", - ">=1.0.0", - "1.x", - "1.2.*", - "1 - 2", - "1.2 || 1.3"

(version string)

Source from the content-addressed store, hash-verified

371// - "1 - 2",
372// - "1.2 || 1.3"
373func looksLikeVersionRange(version string) bool {
374 trimmed := strings.TrimSpace(version)
375 if trimmed == "" {
376 return false
377 }
378
379 if comparatorRangeRe.MatchString(trimmed) {
380 return true
381 }
382 if hyphenRangeRe.MatchString(trimmed) {
383 return true
384 }
385 if orRangeRe.MatchString(trimmed) {
386 return true
387 }
388 if dottedVersionLikeRe.MatchString(trimmed) {
389 // wildcard in a dotted version (x/X/*) implies range-like intent
390 return strings.Contains(trimmed, "x") || strings.Contains(trimmed, "X") || strings.Contains(trimmed, "*")
391 }
392 return false
393}
394
395// validateArgument validates argument details
396func validateArgument(ctx *ValidationContext, obj *model.Argument) *ValidationResult {

Callers 1

validateVersionFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…