File tree 1 file changed +17
-4
lines changed
1 file changed +17
-4
lines changed Original file line number Diff line number Diff line change @@ -10,22 +10,35 @@ export interface RegistryAnswer {
10
10
11
11
const NPM_MIRROR_REGISTRY = "https://registry.npmmirror.com/" ;
12
12
13
- const getUserRegistry = ( packageManager : PackageManager ) : string =>
14
- execaCommandSync ( `${ packageManager } config get registry` ) . stdout ;
13
+ const getUserRegistry = (
14
+ packageManager : PackageManager ,
15
+ isYarnModern : boolean ,
16
+ ) : string =>
17
+ execaCommandSync (
18
+ `${ packageManager } config get ${
19
+ isYarnModern ? "npmRegistryServer" : "registry"
20
+ } }`,
21
+ ) . stdout ;
15
22
16
23
export const getRegistry = async (
17
24
packageManager : PackageManager ,
18
25
lang : Lang ,
19
26
) : Promise < string > => {
20
- const userRegistry = getUserRegistry ( packageManager ) ;
27
+ const isYarnModern =
28
+ packageManager === "yarn" &&
29
+ ! execaCommandSync ( "yarn --version" ) . stdout . startsWith ( "1" ) ;
30
+
31
+ const userRegistry = getUserRegistry ( packageManager , isYarnModern ) ;
21
32
22
33
if ( / h t t p s : \/ \/ r e g i s t r y \. n p m \. t a o b a o \. o r g \/ ? / . test ( userRegistry ) ) {
23
34
console . error (
24
35
"npm.taobao.org is no longer available, resetting it to npmmirror.com" ,
25
36
) ;
26
37
27
38
execaCommandSync (
28
- `${ packageManager } config set registry ${ NPM_MIRROR_REGISTRY } ` ,
39
+ `${ packageManager } config set ${
40
+ isYarnModern ? "npmRegistryServer" : "registry"
41
+ } } ${ NPM_MIRROR_REGISTRY } `,
29
42
) ;
30
43
}
31
44
You can’t perform that action at this time.
0 commit comments