parseVersion sanitizes the browser version enough for semver.ParseTolerant to parse it.
(v string)
| 330 | // parseVersion sanitizes the browser version enough for semver.ParseTolerant |
| 331 | // to parse it. |
| 332 | func parseVersion(v string) (semver.Version, error) { |
| 333 | parts := strings.Split(v, ".") |
| 334 | var err error |
| 335 | for i := len(parts); i > 0; i-- { |
| 336 | var ver semver.Version |
| 337 | ver, err = semver.ParseTolerant(strings.Join(parts[:i], ".")) |
| 338 | if err == nil { |
| 339 | return ver, nil |
| 340 | } |
| 341 | } |
| 342 | return semver.Version{}, err |
| 343 | } |
| 344 | |
| 345 | // The list of valid, top-level capability names, according to the W3C |
| 346 | // specification. |