code: func allowedVersions(available *response.TerraformProviderVersions, required Constraints) []*response.TerraformProviderVersion {
  	var allowed []*response.TerraformProviderVersion
  
  	for _, v := range available.Versions {
  		version, err := VersionStr(v.Version).Parse()
  		if err != nil {
  			log.Printf("[WARN] invalid version found for %q: %s", available.ID, err)
  			continue
  		}
  		if required.Allows(version) {
  			allowed = append(allowed, v)
  		}
  	}
  	return allowed
  }
docs: // take the list of available versions for a plugin, and filter out those that
  // don't fit the constraints.