Commit c93c907
perf(hermes-base): overlap, parallelize and trim the delta-mode pipeline
- run the base and plain (verification) hermesc compiles concurrently; the
plain output is reused directly when the base is rejected, so a rejected
base no longer costs a third compile
- decide about Hermes before Metro and start the base selection (gate,
probe, server lookup, download, cache) while Metro bundles; its log lines
are printed when the compile phase begins
- zip-range: align the tail fetch with the 65577 bytes yauzl reads (each
remote open re-fetched the tail before), prefetch a central directory that
does not fit the tail in one request, merge cached chunks, fetch only the
bytes the cache lacks, and hint the entry about to be read so its local
header and data arrive in one request
- report the bundle location of uploaded apk / ipa on package/create and
accept single-Range fetches for native package bases too
- normalize disassembly lines by opcode dispatch before any regex
(differential-tested against the previous implementation), hash each
fetched bundle once, read the ppk bundle and its location in one pass,
and cache the hermesc HBC-version probe per binary
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>1 parent 966d109 commit c93c907
10 files changed
Lines changed: 1155 additions & 220 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
70 | 70 | | |
71 | 71 | | |
72 | 72 | | |
73 | | - | |
| 73 | + | |
74 | 74 | | |
75 | 75 | | |
76 | 76 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
70 | 70 | | |
71 | 71 | | |
72 | 72 | | |
73 | | - | |
| 73 | + | |
74 | 74 | | |
75 | 75 | | |
76 | 76 | | |
| |||
0 commit comments