(candidate: string, current: string)
| 18 | } |
| 19 | |
| 20 | export function isNewerVersion(candidate: string, current: string): boolean { |
| 21 | const parse = (v: string) => v.split('.').map(Number); |
| 22 | const [cMaj, cMin, cPat] = parse(candidate); |
| 23 | const [rMaj, rMin, rPat] = parse(current); |
| 24 | if (cMaj !== rMaj) return cMaj > rMaj; |
| 25 | if (cMin !== rMin) return cMin > rMin; |
| 26 | return cPat > rPat; |
| 27 | } |
| 28 | |
| 29 | export function fetchLatestVersion(options: { allowProcessExit?: boolean } = {}): Promise<string> { |
| 30 | return new Promise((resolve, reject) => { |
no test coverage detected