cnpmcore icon indicating copy to clipboard operation
cnpmcore copied to clipboard

类似 xprofiler 这种 npm 更新的 binary 使用更快的同步模式

Open fengmk2 opened this issue 2 years ago • 5 comments

https://github.com/cnpm/cnpmcore/blob/master/app/port/schedule/CreateSyncBinaryTask.ts#L11 5分钟触发一次,因为 github api 会限流,限流1个小时会重置,所以基本要1个小时才能同步成功

先检查 npm 是否有新版本,然后才去 github api 获取数据,确保不受限流影响同步时间。

fengmk2 avatar May 07 '23 06:05 fengmk2

这样那些先发布 npm, 后发布 github release 的可能会有同步不到的问题

hyj1991 avatar May 07 '23 06:05 hyj1991

github release page 理论上更新了也会有 webhook 感知到的吧,我去查查,最好的办法就是 github release page 更新的时候才去同步

hyj1991 avatar May 07 '23 06:05 hyj1991

https://github.com/cnpm/cnpmcore/issues/473#issuecomment-1562115738 最近做了一次,准备将后续的都改造一下,有 npm 的优先从 npm 获取版本然后再去 github releases 获取。

fengmk2 avatar May 30 '23 07:05 fengmk2

这样那些先发布 npm, 后发布 github release 的可能会有同步不到的问题

一般是要确保 github release 有文件了才能发布 npm 吧,否则 npm 安装的时候不就直接挂了?

fengmk2 avatar May 30 '23 07:05 fengmk2

一般是要确保 github release 有文件了才能发布 npm 吧,否则 npm 安装的时候不就直接挂了?

正常是这样的,但是 pre-binary 有 fallback 策略的,如果拉不到预编译好的模块就会降级到本地编译,所以只要有编译环境本地也不会挂

hyj1991 avatar May 30 '23 08:05 hyj1991