cnpmcore 4.1.5 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -20,7 +20,7 @@ export declare abstract class AbstractBinary {
20
20
  protected logger: EggLogger;
21
21
  protected httpclient: EggHttpClient;
22
22
  abstract initFetch(binaryName: BinaryName): Promise<void>;
23
- abstract fetch(dir: string, binaryName: BinaryName): Promise<FetchResult | undefined>;
23
+ abstract fetch(dir: string, binaryName: BinaryName, lastData?: Record<string, unknown>): Promise<FetchResult | undefined>;
24
24
  finishFetch(_success: boolean, _binaryName: BinaryName): Promise<void>;
25
25
  protected requestXml(url: string): Promise<string>;
26
26
  protected requestJSON<T = any>(url: string, requestHeaders?: Record<string, string>): Promise<T>;
@@ -90,4 +90,4 @@ __decorate([
90
90
  __metadata("design:type", Function)
91
91
  ], AbstractBinary.prototype, "httpclient", void 0);
92
92
  export const BinaryAdapter = QualifierImplDecoratorUtil.generatorDecorator(AbstractBinary, BINARY_ADAPTER_ATTRIBUTE);
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RCaW5hcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9hcHAvY29tbW9uL2FkYXB0ZXIvYmluYXJ5L0Fic3RyYWN0QmluYXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFDTCxNQUFNLEVBQ04sMEJBQTBCLEdBRTNCLE1BQU0sYUFBYSxDQUFDO0FBUXJCLE1BQU0sU0FBUyxHQUFHLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQVUsQ0FBQztBQWdCeEQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUM7QUFFM0UsTUFBTSxPQUFnQixjQUFjO0lBYWxDLDZEQUE2RDtJQUM3RCxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQWlCLEVBQUUsV0FBdUI7UUFDMUQsMEJBQTBCO0lBQzVCLENBQUM7SUFFUyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQVc7UUFDcEMsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUU7WUFDbkUsT0FBTyxFQUFFLE1BQU07WUFDZixjQUFjLEVBQUUsSUFBSTtZQUNwQixJQUFJLEVBQUUsSUFBSTtTQUNYLENBQUMsQ0FBQztRQUNILE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQVksQ0FBQztRQUN0QyxJQUFJLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDZCxzRkFBc0YsRUFDdEYsR0FBRyxFQUNILE1BQU0sRUFDTixPQUFPLEVBQ1AsR0FBRyxDQUNKLENBQUM7WUFDRixPQUFPLEVBQUUsQ0FBQztRQUNaLENBQUM7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRCw2REFBNkQ7SUFDbkQsS0FBSyxD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
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RCaW5hcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9hcHAvY29tbW9uL2FkYXB0ZXIvYmluYXJ5L0Fic3RyYWN0QmluYXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFDTCxNQUFNLEVBQ04sMEJBQTBCLEdBRTNCLE1BQU0sYUFBYSxDQUFDO0FBUXJCLE1BQU0sU0FBUyxHQUFHLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQVUsQ0FBQztBQWdCeEQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUM7QUFFM0UsTUFBTSxPQUFnQixjQUFjO0lBY2xDLDZEQUE2RDtJQUM3RCxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQWlCLEVBQUUsV0FBdUI7UUFDMUQsMEJBQTBCO0lBQzVCLENBQUM7SUFFUyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQVc7UUFDcEMsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUU7WUFDbkUsT0FBTyxFQUFFLE1BQU07WUFDZixjQUFjLEVBQUUsSUFBSTtZQUNwQixJQUFJLEVBQUUsSUFBSTtTQUNYLENBQUMsQ0FBQztRQUNILE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQVksQ0FBQztRQUN0QyxJQUFJLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDZCxzRkFBc0YsRUFDdEYsR0FBRyxFQUNILE1BQU0sRUFDTixPQUFPLEVBQ1AsR0FBRyxDQUNKLENBQUM7WUFDRixPQUFPLEVBQUUsQ0FBQztRQUNaLENBQUM7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRCw2REFBNkQ7SUFDbkQsS0FBSyxDQUFDLFdBQVcsQ0FDekIsR0FBVyxFQUNYLGNBQXVDO1FBRXZDLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFO1lBQ25FLE9BQU8sRUFBRSxNQUFNO1lBQ2YsUUFBUSxFQUFFLE1BQU07WUFDaEIsY0FBYyxFQUFFLElBQUk7WUFDcEIsSUFBSSxFQUFFLElBQUk7WUFDVixPQUFPLEVBQUUsY0FBYztTQUN4QixDQUFDLENBQUM7UUFDSCxJQUFJLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDZCw4RUFBOEUsRUFDOUUsR0FBRyxFQUNILE1BQU0sRUFDTixPQUFPLENBQ1IsQ0FBQztZQUNGLE9BQU8sSUFBUyxDQUFDO1FBQ25CLENBQUM7UUFDRCxPQUFPLElBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQsa0VBQWtFO0lBQ3hELEtBQUssQ0FBQyxtQkFBbUI7UUFDakMsTUFBTSxlQUFlLEdBQWEsRUFBRSxDQUFDO1FBQ3JDLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FDckMsb0NBQW9DLENBQ3JDLENBQUM7UUFDRixLQUFLLE1BQU0sT0FBTyxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTztnQkFBRSxTQUFTO1lBQy9CLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3hELDZCQUE2QjtZQUM3QixJQUFJLGNBQWMsSUFBSSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3RFLGVBQWUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDdkMsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLGVBQWUsQ0FBQztJQUN6QixDQUFDO0lBRVMsaUJBQWlCO1FBQ3pCLDRDQUE0QztRQUM1QyxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRVMsYUFBYSxDQUFDLFlBQStCO1FBQ3JELElBQUksWUFBWSxFQUFFLE9BQU8sRUFBRSxTQUFTO1lBQUUsT0FBTyxZQUFZLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQztRQUM1RSx3Q0FBd0M7UUFDeEMsT0FBTztZQUNMLEtBQUssRUFBRSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUM7WUFDL0MsTUFBTSxFQUFFLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUM7WUFDaEMsS0FBSyxFQUFFLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQztTQUN2QixDQUFDO0lBQ0osQ0FBQztJQUVTLGFBQWE7UUFDckIsMkVBQTJFO1FBQzNFLE9BQU87WUFDTCxNQUFNLEVBQUUsQ0FBQyxTQUFTLENBQUM7WUFDbkIsS0FBSyxFQUFFLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQztZQUN4QixLQUFLLEVBQUUsQ0FBQyxTQUFTLENBQUM7U0FDbkIsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQXJHVztJQURULE1BQU0sRUFBRTs7OENBQ21CO0FBR2xCO0lBRFQsTUFBTSxFQUFFOztrREFDMkI7QUFvR3RDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FDeEIsMEJBQTBCLENBQUMsa0JBQWtCLENBQzNDLGNBQWMsRUFDZCx3QkFBd0IsQ0FDekIsQ0FBQyJ9
@@ -1,7 +1,8 @@
1
1
  import { AbstractBinary, type FetchResult } from './AbstractBinary.js';
2
+ export declare const platforms: string[];
2
3
  export declare class PuppeteerBinary extends AbstractBinary {
3
4
  private dirItems?;
4
5
  initFetch(): Promise<void>;
5
- fetch(dir: string): Promise<FetchResult | undefined>;
6
+ fetch(dir: string, _binaryName: string, lastData?: Record<string, unknown>): Promise<FetchResult | undefined>;
6
7
  private archiveName;
7
8
  }
@@ -5,76 +5,29 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import { SingletonProto } from '@eggjs/tegg';
8
+ import { XMLParser } from 'fast-xml-parser';
8
9
  import { BinaryType } from '../../enum/Binary.js';
9
10
  import { AbstractBinary, BinaryAdapter, } from './AbstractBinary.js';
11
+ export const platforms = ['Linux_x64', 'Mac', 'Mac_Arm', 'Win', 'Win_x64'];
12
+ const MAX_DEPTH = 100;
10
13
  let PuppeteerBinary = class PuppeteerBinary extends AbstractBinary {
11
14
  async initFetch() {
12
15
  this.dirItems = undefined;
13
16
  }
14
- async fetch(dir) {
17
+ async fetch(dir, _binaryName, lastData) {
15
18
  if (!this.dirItems) {
16
- const pkgUrl = 'https://registry.npmjs.com/puppeteer';
17
- const data = await this.requestJSON(pkgUrl);
19
+ const s3Url = 'https://chromium-browser-snapshots.storage.googleapis.com';
20
+ const chromiumRevisions = new Map();
18
21
  this.dirItems = {};
19
22
  this.dirItems['/'] = [];
20
- const chromiumRevisions = new Map();
21
- for (const version in data.versions) {
22
- // find chromium versions
23
- const pkg = data.versions[version];
24
- const revision = pkg.puppeteer?.chromium_revision
25
- ? String(pkg.puppeteer.chromium_revision)
26
- : '';
27
- if (revision && !chromiumRevisions.has(revision)) {
28
- chromiumRevisions.set(revision, data.time[version]);
29
- }
30
- }
31
- // https://unpkg.com/puppeteer@5.1.0/lib/cjs/revisions.js
32
- // https://unpkg.com/puppeteer@latest/lib/cjs/puppeteer/revisions.js
33
- // exports.PUPPETEER_REVISIONS = {
34
- // chromium: '768783',
35
- // firefox: 'latest',
36
- // };
37
- const unpkgURL = 'https://unpkg.com/puppeteer-core@latest/lib/cjs/puppeteer/revisions.js';
38
- const text = await this.requestXml(unpkgURL);
39
- const m = /chromium:\s+'(\d+)',/.exec(text);
40
- if (m && !chromiumRevisions.has(m[1])) {
41
- chromiumRevisions.set(m[1], new Date().toISOString());
42
- }
43
- // download LAST_CHANGE
44
- // https://github.com/chaopeng/chromium-downloader/blob/master/get-chromium#L28
45
- const LAST_CHANGE_URL = 'https://www.googleapis.com/download/storage/v1/b/chromium-browser-snapshots/o/Linux_x64%2FLAST_CHANGE?alt=media';
46
- const lastRevision = await this.requestXml(LAST_CHANGE_URL);
47
- if (lastRevision) {
48
- chromiumRevisions.set(lastRevision, new Date().toISOString());
49
- }
50
- // old versions
51
- // v5.0.0
52
- chromiumRevisions.set('756035', data.time['5.0.0']);
53
- // v5.2.0
54
- chromiumRevisions.set('768783', data.time['5.2.0']);
55
- // v5.2.1
56
- chromiumRevisions.set('782078', data.time['5.2.1']);
57
- // v5.3.0
58
- chromiumRevisions.set('800071', data.time['5.3.0']);
59
- // v5.4.0
60
- chromiumRevisions.set('809590', data.time['5.4.0']);
61
- // v5.5.0
62
- chromiumRevisions.set('818858', data.time['5.5.0']);
63
- // v6.0.0
64
- chromiumRevisions.set('843427', data.time['6.0.0']);
65
- // "7.0.0"
66
- chromiumRevisions.set('848005', data.time['7.0.0']);
67
- // https://github.com/puppeteer/puppeteer/blob/v8.0.0/src/revisions.ts#L23
68
- // "8.0.0":"2021-02-26T08:36:50.107Z"
69
- chromiumRevisions.set('856583', data.time['8.0.0']);
70
- // "9.0.0":"2021-04-21T11:27:32.513Z"
71
- chromiumRevisions.set('869685', data.time['9.0.0']);
72
- // "10.0.0":"2021-05-31T12:42:27.486Z"
73
- chromiumRevisions.set('884014', data.time['10.0.0']);
74
- // "11.0.0":"2021-11-03T09:29:12.751Z"
75
- chromiumRevisions.set('901912', data.time['11.0.0']);
76
- const platforms = ['Linux_x64', 'Mac', 'Mac_Arm', 'Win', 'Win_x64'];
77
23
  for (const platform of platforms) {
24
+ const revision = lastData?.[platform];
25
+ if (!revision) {
26
+ // 丢弃库中历史不带 lastData 的任务,防止遍历任务过多
27
+ this.logger.info('drop puppeteer task if has no last data for platform %s, lastPlatform', platform, lastData);
28
+ return;
29
+ }
30
+ let marker = revision ? `${platform}/${revision}/REVISIONS` : undefined;
78
31
  this.dirItems['/'].push({
79
32
  name: `${platform}/`,
80
33
  date: new Date().toISOString(),
@@ -83,6 +36,31 @@ let PuppeteerBinary = class PuppeteerBinary extends AbstractBinary {
83
36
  url: '',
84
37
  });
85
38
  this.dirItems[`/${platform}/`] = [];
39
+ let i = 0;
40
+ do {
41
+ let requestUrl = s3Url + '?prefix=' + platform;
42
+ if (marker) {
43
+ requestUrl += '&marker=' + marker;
44
+ }
45
+ const xml = await this.requestXml(requestUrl);
46
+ const parser = new XMLParser();
47
+ const obj = parser.parse(xml);
48
+ if (obj.ListBucketResult.IsTruncated === true &&
49
+ obj.ListBucketResult.NextMarker) {
50
+ marker = obj.ListBucketResult.NextMarker;
51
+ }
52
+ else {
53
+ marker = undefined;
54
+ }
55
+ for (const content of obj.ListBucketResult.Contents) {
56
+ // /Linux_x64/1041455/REVISIONS
57
+ if (content.Key.endsWith('/REVISIONS')) {
58
+ const revision = content.Key.split('/')[1].trim();
59
+ chromiumRevisions.set(revision, content.LastModified);
60
+ }
61
+ }
62
+ // 最多遍历 100 次防止内存爆炸,下次同步任务会继续
63
+ } while (i++ < MAX_DEPTH && marker !== undefined);
86
64
  }
87
65
  for (const [revision, date] of chromiumRevisions.entries()) {
88
66
  // https://github.com/puppeteer/puppeteer/blob/eebf452d38b79bb2ea1a1ba84c3d2ea6f2f9f899/src/node/BrowserFetcher.ts#L40
@@ -137,4 +115,4 @@ PuppeteerBinary = __decorate([
137
115
  BinaryAdapter(BinaryType.Puppeteer)
138
116
  ], PuppeteerBinary);
139
117
  export { PuppeteerBinary };
140
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHVwcGV0ZWVyQmluYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vYXBwL2NvbW1vbi9hZGFwdGVyL2JpbmFyeS9QdXBwZXRlZXJCaW5hcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUNMLGNBQWMsRUFDZCxhQUFhLEdBR2QsTUFBTSxxQkFBcUIsQ0FBQztBQUl0QixJQUFNLGVBQWUsR0FBckIsTUFBTSxlQUFnQixTQUFRLGNBQWM7SUFLakQsS0FBSyxDQUFDLFNBQVM7UUFDYixJQUFJLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQztJQUM1QixDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFXO1FBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbkIsTUFBTSxNQUFNLEdBQUcsc0NBQXNDLENBQUM7WUFDdEQsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzVDLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ3hCLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUM7WUFDcEQsS0FBSyxNQUFNLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3BDLHlCQUF5QjtnQkFDekIsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDbkMsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLFNBQVMsRUFBRSxpQkFBaUI7b0JBQy9DLENBQUMsQ0FBQyxNQUFNLENBQUMs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
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHVwcGV0ZWVyQmluYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vYXBwL2NvbW1vbi9hZGFwdGVyL2JpbmFyeS9QdXBwZXRlZXJCaW5hcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM3QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFNUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFDTCxjQUFjLEVBQ2QsYUFBYSxHQUdkLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBRTNFLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQztBQUlmLElBQU0sZUFBZSxHQUFyQixNQUFNLGVBQWdCLFNBQVEsY0FBYztJQUtqRCxLQUFLLENBQUMsU0FBUztRQUNiLElBQUksQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDO0lBQzVCLENBQUM7SUFFRCxLQUFLLENBQUMsS0FBSyxDQUNULEdBQVcsRUFDWCxXQUFtQixFQUNuQixRQUFrQztRQUVsQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ25CLE1BQU0sS0FBSyxHQUFHLDJEQUEyRCxDQUFDO1lBQzFFLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUM7WUFDcEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDeEIsS0FBSyxNQUFNLFFBQVEsSUFBSSxTQUFTLEVBQUUsQ0FBQztnQkFDakMsTUFBTSxRQUFRLEdBQUcsUUFBUSxFQUFF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
@@ -19,6 +19,7 @@ import { AbstractBinary, } from '../../common/adapter/binary/AbstractBinary.js';
19
19
  import { AbstractService } from '../../common/AbstractService.js';
20
20
  import { BinaryType } from '../../common/enum/Binary.js';
21
21
  import { TaskState, TaskType } from '../../common/enum/Task.js';
22
+ import { platforms } from '../../common/adapter/binary/PuppeteerBinary.js';
22
23
  function isoNow() {
23
24
  return new Date().toISOString();
24
25
  }
@@ -57,6 +58,20 @@ let BinarySyncerService = class BinarySyncerService extends AbstractService {
57
58
  return await this.nfsAdapter.getDownloadUrlOrStream(binary.storePath);
58
59
  }
59
60
  async createTask(binaryName, lastData) {
61
+ // chromium-browser-snapshots 产物极大,完整遍历 s3 bucket 耗时会太长
62
+ // 必须从上次同步的 revision 之后开始遍历
63
+ // 如果需要补偿数据,可以
64
+ if (binaryName === 'chromium-browser-snapshots') {
65
+ lastData = lastData || {};
66
+ for (const platform of platforms) {
67
+ if (lastData[platform])
68
+ continue;
69
+ const binaryDir = await this.binaryRepository.findLatestBinaryDir('chromium-browser-snapshots', `/${platform}/`);
70
+ if (binaryDir) {
71
+ lastData[platform] = binaryDir.name.slice(0, -1);
72
+ }
73
+ }
74
+ }
60
75
  try {
61
76
  return await this.taskService.createTask(Task.createSyncBinary(binaryName, lastData), false);
62
77
  }
@@ -115,9 +130,9 @@ let BinarySyncerService = class BinarySyncerService extends AbstractService {
115
130
  await this.taskService.finishTask(task, TaskState.Fail, logs.join('\n'));
116
131
  }
117
132
  }
118
- async syncDir(binaryAdapter, task, dir, parentIndex = '', latestVersionParent = '/') {
133
+ async syncDir(binaryAdapter, task, dir, parentIndex = '', latestVersionParent = '/', lastData) {
119
134
  const binaryName = task.targetName;
120
- const result = await binaryAdapter.fetch(dir, binaryName);
135
+ const result = await binaryAdapter.fetch(dir, binaryName, lastData);
121
136
  let hasDownloadError = false;
122
137
  let hasItems = false;
123
138
  if (result && result.items.length > 0) {
@@ -307,4 +322,4 @@ BinarySyncerService = __decorate([
307
322
  })
308
323
  ], BinarySyncerService);
309
324
  export { BinarySyncerService };
310
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmluYXJ5U3luY2VyU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FwcC9jb3JlL3NlcnZpY2UvQmluYXJ5U3luY2VyU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVsQyxPQUFPLEVBQ0wsV0FBVyxFQUNYLE1BQU0sRUFDTixjQUFjLEdBRWYsTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVuQyxPQUFPLFFBR04sTUFBTSw2QkFBNkIsQ0FBQztBQUVyQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRzdDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQ0wsY0FBYyxHQUVmLE1BQU0sK0NBQStDLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWhFLFNBQVMsTUFBTTtJQUNiLE9BQU8sSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztBQUNsQyxDQUFDO0FBS00sSUFBTSxtQkFBbUIsR0FBekIsTUFBTSxtQkFBb0IsU0FBUSxlQUFlO0lBWXRELDhEQUE4RDtJQUM5RCw2RkFBNkY7SUFDN0YsNENBQTRDO0lBQ3JDLEtBQUssQ0FBQyxVQUFVLENBQ3JCLFVBQXFDLEVBQ3JDLE1BQWMsRUFDZCxJQUFZO1FBRVosT0FB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
325
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmluYXJ5U3luY2VyU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FwcC9jb3JlL3NlcnZpY2UvQmluYXJ5U3luY2VyU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVsQyxPQUFPLEVBQ0wsV0FBVyxFQUNYLE1BQU0sRUFDTixjQUFjLEdBRWYsTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVuQyxPQUFPLFFBR04sTUFBTSw2QkFBNkIsQ0FBQztBQUVyQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRzdDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQ0wsY0FBYyxHQUVmLE1BQU0sK0NBQStDLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUUzRSxTQUFTLE1BQU07SUFDYixPQUFPLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7QUFDbEMsQ0FBQztBQUtNLElBQU0sbUJBQW1CLEdBQXpCLE1BQU0sbUJBQW9CLFNBQVEsZUFBZTtJQVl0RCw4REFBOEQ7SUFDOUQsNkZBQTZGO0lBQzdGLDRDQUE0QztJQUNyQyxLQUFLLENBQUMsVUFB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
@@ -23,6 +23,11 @@ export declare class BinarySyncController extends AbstractController {
23
23
  url: string;
24
24
  modified: Date;
25
25
  }[] | undefined>;
26
+ syncBinary(ctx: EggContext, binaryName: BinaryName, lastData?: Record<string, string>): Promise<{
27
+ ok: boolean;
28
+ taskId: string | undefined;
29
+ logPath: string | undefined;
30
+ }>;
26
31
  showBinaryIndex(ctx: EggContext, binaryName: BinaryName): Promise<import("stream").Readable | {
27
32
  id: string;
28
33
  category: string;
@@ -10,12 +10,13 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  var __param = (this && this.__param) || function (paramIndex, decorator) {
11
11
  return function (target, key) { decorator(target, key, paramIndex); }
12
12
  };
13
- import { Context, HTTPController, HTTPMethod, HTTPMethodEnum, HTTPParam, Inject, } from '@eggjs/tegg';
13
+ import { Context, HTTPController, HTTPMethod, HTTPMethodEnum, HTTPParam, Inject, Middleware, HTTPBody, } from '@eggjs/tegg';
14
14
  import path from 'node:path';
15
15
  import { NotFoundError } from 'egg-errors';
16
16
  import { AbstractController } from './AbstractController.js';
17
17
  import binaries from '../../../config/binaries.js';
18
18
  import { BinaryNameRule, BinarySubpathRule } from '../typebox.js';
19
+ import { AdminAccess } from '../middleware/AdminAccess.js';
19
20
  let BinarySyncController = class BinarySyncController extends AbstractController {
20
21
  async showBinaryHTML(ctx) {
21
22
  ctx.type = 'html';
@@ -89,6 +90,22 @@ let BinarySyncController = class BinarySyncController extends AbstractController
89
90
  ctx.attachment(name);
90
91
  return urlOrStream;
91
92
  }
93
+ async syncBinary(ctx, binaryName, lastData) {
94
+ // check binaryName valid
95
+ try {
96
+ ctx.tValidate(BinaryNameRule, binaryName);
97
+ }
98
+ catch {
99
+ throw new NotFoundError(`Binary "${binaryName}" not found`);
100
+ }
101
+ this.logger.info('SyncBinary: %s, lastData: %j', binaryName, lastData);
102
+ const task = await this.binarySyncerService.createTask(binaryName, lastData);
103
+ return {
104
+ ok: true,
105
+ taskId: task?.taskId,
106
+ logPath: task?.logPath,
107
+ };
108
+ }
92
109
  async showBinaryIndex(ctx, binaryName) {
93
110
  // check binaryName valid
94
111
  try {
@@ -149,6 +166,19 @@ __decorate([
149
166
  __metadata("design:paramtypes", [Object, String, String]),
150
167
  __metadata("design:returntype", Promise)
151
168
  ], BinarySyncController.prototype, "showBinary", null);
169
+ __decorate([
170
+ HTTPMethod({
171
+ path: '/-/binary/:binaryName/sync',
172
+ method: HTTPMethodEnum.POST,
173
+ }),
174
+ Middleware(AdminAccess),
175
+ __param(0, Context()),
176
+ __param(1, HTTPParam()),
177
+ __param(2, HTTPBody()),
178
+ __metadata("design:type", Function),
179
+ __metadata("design:paramtypes", [Object, String, Object]),
180
+ __metadata("design:returntype", Promise)
181
+ ], BinarySyncController.prototype, "syncBinary", null);
152
182
  __decorate([
153
183
  HTTPMethod({
154
184
  path: '/-/binary/:binaryName(@[^/]{1,220}/[^/]{1,220}|[^@/]{1,220})',
@@ -164,4 +194,4 @@ BinarySyncController = __decorate([
164
194
  HTTPController()
165
195
  ], BinarySyncController);
166
196
  export { BinarySyncController };
167
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmluYXJ5U3luY0NvbnRyb2xsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9hcHAvcG9ydC9jb250cm9sbGVyL0JpbmFyeVN5bmNDb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFFTCxPQUFPLEVBQ1AsY0FBYyxFQUNkLFVBQVUsRUFDVixjQUFjLEVBQ2QsU0FBUyxFQUNULE1BQU0sR0FDUCxNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLElBQUksTUFBTSxXQUFXLENBQUM7QUFDN0IsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUUzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUc3RCxPQUFPLFFBQTZCLE1BQU0sNkJBQTZCLENBQUM7QUFDeEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczRCxJQUFNLG9CQUFvQixHQUExQixNQUFNLG9CQUFxQixTQUFRLGtCQUFrQjtJQVFwRCxBQUFOLEtBQUssQ0FBQyxjQUFjLENBQVksR0FBZTtRQUM3QyxHQUFHLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQztRQUNsQixPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDO0lBQzVCLENBQUM7SUFNSyxBQUFOLEtBQUssQ0FBQyxZQUFZO1FBQ2hCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsRUFBRSxFQUFFO1lBQ2pFLE9BQU87Z0JBQ0wsSUFBSSxFQUFFLEdBQUcsVUFBVSxHQUFHO2dCQUN0QixRQUFRLEVBQUUsR0FBRyxZQUFZLENBQUMsUUFBUSxHQUFHO2dCQUNyQyxXQUFXLEVBQUUsWUFBWSxDQUFDLFdBQVc7Z0JBQ3JDLE9BQU8sRUFBRSxZQUFZLENBQUMsT0FB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
197
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmluYXJ5U3luY0NvbnRyb2xsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9hcHAvcG9ydC9jb250cm9sbGVyL0JpbmFyeVN5bmNDb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFFTCxPQUFPLEVBQ1AsY0FBYyxFQUNkLFVBQVUsRUFDVixjQUFjLEVBQ2QsU0FBUyxFQUNULE1BQU0sRUFDTixVQUFVLEVBQ1YsUUFBUSxHQUNULE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sSUFBSSxNQUFNLFdBQVcsQ0FBQztBQUM3QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRzdELE9BQU8sUUFBNkIsTUFBTSw2QkFBNkIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUdwRCxJQUFNLG9CQUFvQixHQUExQixNQUFNLG9CQUFxQixTQUFRLGtCQUFrQjtJQVFwRCxBQUFOLEtBQUssQ0FBQyxjQUFjLENBQVksR0FBZTtRQUM3QyxHQUFHLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQztRQUNsQixPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDO0lBQzVCLENBQUM7SUFNSyxBQUFOLEtBQUssQ0FBQyxZQUFZO1FBQ2hCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsRUFBRSxFQUFFO1lBQ2pFLE9BQU87Z0JBQ0wsSUFBSSxFQUFFLEdBQUcsVUFBVSxHQUFHO2dCQUN0QixRQUFRLEVBQUUsR0FBRyxZQUFZLENBQUMsUUFBUSxHQUFH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
@@ -5,4 +5,5 @@ export declare class BinaryRepository extends AbstractRepository {
5
5
  saveBinary(binary: BinaryEntity): Promise<void>;
6
6
  findBinary(category: string, parent: string, name: string): Promise<BinaryEntity | null>;
7
7
  listBinaries(category: string, parent: string): Promise<BinaryEntity[]>;
8
+ findLatestBinaryDir(category: string, parent: string): Promise<BinaryEntity | null>;
8
9
  }
@@ -34,6 +34,13 @@ let BinaryRepository = class BinaryRepository extends AbstractRepository {
34
34
  const models = await this.Binary.find({ category, parent });
35
35
  return models.map(model => ModelConvertor.convertModelToEntity(model, BinaryEntity));
36
36
  }
37
+ async findLatestBinaryDir(category, parent) {
38
+ const model = await this.Binary.findOne({ category, parent }).order('gmt_create', 'desc');
39
+ if (model) {
40
+ return ModelConvertor.convertModelToEntity(model, BinaryEntity);
41
+ }
42
+ return null;
43
+ }
37
44
  };
38
45
  __decorate([
39
46
  Inject(),
@@ -45,4 +52,4 @@ BinaryRepository = __decorate([
45
52
  })
46
53
  ], BinaryRepository);
47
54
  export { BinaryRepository };
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmluYXJ5UmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2FwcC9yZXBvc2l0b3J5L0JpbmFyeVJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRWxFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsTUFBTSxJQUFJLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBS3RELElBQU0sZ0JBQWdCLEdBQXRCLE1BQU0sZ0JBQWlCLFNBQVEsa0JBQWtCO0lBSXRELEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBb0I7UUFDbkMsSUFBSSxNQUFNLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDZCxNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzNELElBQUksQ0FBQyxLQUFLO2dCQUFFLE9BQU87WUFDbkIsTUFBTSxjQUFjLENBQUMsaUJBQWlCLENBQ3BDLE1BQTRDLEVBQzVDLEtBQUssQ0FDTixDQUFDO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLEtBQUssR0FBRyxNQUFNLGNBQWMsQ0FBQyxvQkFBb0IsQ0FDckQsTUFBNEMsRUFDNUMsSUFBSSxDQUFDLE1BQU0sQ0FDWixDQUFDO1lBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ2Qsd0RBQXdELEVBQ3hELEtBQUssQ0FBQyxFQUFFLEVBQ1IsS0FBSyxDQUFDLFFBQVEsQ0FDZixDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQWdCLEVBQUUsTUFBYyxFQUFFLElBQVk7UUFDN0QsTUFBTSxLQUFLLEdBQUcsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNwRSxJQUFJLEtBQUs7WUFBRSxPQUFPLGNBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDM0UsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsS0FBSyxDQUFDLFlBQVksQ0FDaEIsUUFBZ0IsRUFDaEIsTUFBYztRQUVkLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUM1RCxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FDeEIsY0FBYyxDQUFDLG9CQUFvQixDQUFDLEtBQUssRUFBRSxZQUFZLENBQUMsQ0FDekQsQ0FBQztJQUNKLENBQUM7Q0FDRixDQUFBO0FBdENrQjtJQURoQixNQUFNLEVBQUU7O2dEQUNtQztBQUZqQyxnQkFBZ0I7SUFINUIsY0FBYyxDQUFDO1FBQ2QsV0FBVyxFQUFFLFdBQVcsQ0FBQyxNQUFNO0tBQ2hDLENBQUM7R0FDVyxnQkFBZ0IsQ0F3QzVCIn0=
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmluYXJ5UmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2FwcC9yZXBvc2l0b3J5L0JpbmFyeVJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRWxFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsTUFBTSxJQUFJLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBS3RELElBQU0sZ0JBQWdCLEdBQXRCLE1BQU0sZ0JBQWlCLFNBQVEsa0JBQWtCO0lBSXRELEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBb0I7UUFDbkMsSUFBSSxNQUFNLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDZCxNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzNELElBQUksQ0FBQyxLQUFLO2dCQUFFLE9BQU87WUFDbkIsTUFBTSxjQUFjLENBQUMsaUJBQWlCLENBQ3BDLE1BQTRDLEVBQzVDLEtBQUssQ0FDTixDQUFDO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLEtBQUssR0FBRyxNQUFNLGNBQWMsQ0FBQyxvQkFBb0IsQ0FDckQsTUFBNEMsRUFDNUMsSUFBSSxDQUFDLE1BQU0sQ0FDWixDQUFDO1lBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ2Qsd0RBQXdELEVBQ3hELEtBQUssQ0FBQyxFQUFFLEVBQ1IsS0FBSyxDQUFDLFFBQVEsQ0FDZixDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQWdCLEVBQUUsTUFBYyxFQUFFLElBQVk7UUFDN0QsTUFBTSxLQUFLLEdBQUcsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNwRSxJQUFJLEtBQUs7WUFBRSxPQUFPLGNBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDM0UsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsS0FBSyxDQUFDLFlBQVksQ0FDaEIsUUFBZ0IsRUFDaEIsTUFBYztRQUVkLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUM1RCxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FDeEIsY0FBYyxDQUFDLG9CQUFvQixDQUFDLEtBQUssRUFBRSxZQUFZLENBQUMsQ0FDekQsQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsbUJBQW1CLENBQ3ZCLFFBQWdCLEVBQ2hCLE1BQWM7UUFFZCxNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsS0FBSyxDQUNqRSxZQUFZLEVBQ1osTUFBTSxDQUNQLENBQUM7UUFDRixJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ1YsT0FBTyxjQUFjLENBQUMsb0JBQW9CLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQ2xFLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FDRixDQUFBO0FBcERrQjtJQURoQixNQUFNLEVBQUU7O2dEQUNtQztBQUZqQyxnQkFBZ0I7SUFINUIsY0FBYyxDQUFDO1FBQ2QsV0FBVyxFQUFFLFdBQVcsQ0FBQyxNQUFNO0tBQ2hDLENBQUM7R0FDVyxnQkFBZ0IsQ0FzRDVCIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cnpmcore",
3
- "version": "4.1.5",
3
+ "version": "4.2.0",
4
4
  "description": "Private NPM Registry for Enterprise",
5
5
  "files": [
6
6
  "dist/**/*"
@@ -110,6 +110,7 @@
110
110
  "egg-typebox-validate": "^3.0.0",
111
111
  "egg-view-nunjucks": "^2.3.0",
112
112
  "eggjs-elasticsearch": "^0.0.6",
113
+ "fast-xml-parser": "^5.0.9",
113
114
  "fs-cnpm": "^2.4.0",
114
115
  "ioredis": "^5.3.1",
115
116
  "leoric": "^2.12.3",
@@ -122,7 +123,6 @@
122
123
  "p-map": "^4.0.0",
123
124
  "pg": "^8.13.1",
124
125
  "read-env-value": "^1.0.0",
125
- "s3-cnpmcore": "^1.1.2",
126
126
  "semver": "^7.3.5",
127
127
  "ssri": "^8.0.1",
128
128
  "type-fest": "^2.5.3",