@@ -5,6 +5,7 @@ import semver from 'semver';
5
5
6
6
import defaultConfig from '../config.json' ;
7
7
8
+ import * as semverUtils from './semverUtils'
8
9
import * as folderUtils from './folderUtils' ;
9
10
import * as pmmUtils from './pmmUtils' ;
10
11
import { SupportedPackageManagers , SupportedPackageManagerSet } from './types' ;
@@ -90,7 +91,7 @@ export class Engine {
90
91
throw new UsageError ( `This package manager (${ locator . name } ) isn't supported by this corepack build` ) ;
91
92
92
93
const ranges = Object . keys ( definition . ranges ) . reverse ( ) ;
93
- const range = ranges . find ( range => semver . satisfies ( locator . reference , range ) ) ;
94
+ const range = ranges . find ( range => semverUtils . satisfiesWithPrereleases ( locator . reference , range ) ) ;
94
95
if ( typeof range === `undefined` )
95
96
throw new Error ( `Assertion failed: Specified resolution (${ locator . reference } ) isn't supported by any of ${ ranges . join ( `, ` ) } ` ) ;
96
97
@@ -116,7 +117,7 @@ export class Engine {
116
117
return { name : descriptor . name , reference : cachedVersion } ;
117
118
118
119
const candidateRangeDefinitions = Object . keys ( definition . ranges ) . filter ( range => {
119
- return semver . intersects ( range , descriptor . range ) ;
120
+ return semverUtils . satisfiesWithPrereleases ( descriptor . range , range )
120
121
} ) ;
121
122
122
123
const tagResolutions = await Promise . all ( candidateRangeDefinitions . map ( async range => {
0 commit comments