Update inversify build on top of tsgo#1851
Conversation
update build to be on top of tsgo
|
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Benchmarks results:> root@ benchmarks:container:cjs /home/runner/work/monorepo/monorepo
> pnpm run --filter "@inversifyjs/container-benchmarks" benchmarks:run:cjs
> @inversifyjs/container-benchmarks@ benchmarks:run:cjs /home/runner/work/monorepo/monorepo/packages/container/tools/container-benchmarks
> ./bin/run-cjs.cjs
[CJS] Running benchmarks...
Get service in singleton scope
┌─────────┬────────────────────┬───────────────────┬──────────────────┬────────────────────────┬────────────────────────┬─────────┐
│ (index) │ Task name │ Latency avg (ns) │ Latency med (ns) │ Throughput avg (ops/s) │ Throughput med (ops/s) │ Samples │
├─────────┼────────────────────┼───────────────────┼──────────────────┼────────────────────────┼────────────────────────┼─────────┤
│ 0 │ 'inversifyCurrent' │ '290.83 ± 1.24%' │ '251.00 ± 10.00' │ '3716065 ± 0.02%' │ '3984064 ± 165314' │ 3438478 │
│ 1 │ 'inversify6' │ '1170.0 ± 8.59%' │ '1032.0 ± 40.00' │ '938185 ± 0.02%' │ '968992 ± 39072' │ 854673 │
│ 2 │ 'inversify7' │ '308.24 ± 0.22%' │ '281.00 ± 10.00' │ '3417935 ± 0.01%' │ '3558719 ± 131318' │ 3244262 │
│ 3 │ 'NestJS' │ '368.32 ± 10.39%' │ '320.00 ± 9.00' │ '3084940 ± 0.01%' │ '3125000 ± 90434' │ 2715001 │
│ 4 │ 'tsyringe' │ '317.87 ± 0.41%' │ '291.00 ± 10.00' │ '3329007 ± 0.01%' │ '3436426 ± 122293' │ 3145982 │
└─────────┴────────────────────┴───────────────────┴──────────────────┴────────────────────────┴────────────────────────┴─────────┘
inversifyCurrent vs inversify6 Speedup: 3.961x
inversifyCurrent vs inversify7 Speedup: 1.087x
inversifyCurrent vs NestJS Speedup: 1.205x
inversifyCurrent vs tsyringe Speedup: 1.116x
Get service in transient scope
┌─────────┬────────────────────┬──────────────────┬───────────────────┬────────────────────────┬────────────────────────┬─────────┐
│ (index) │ Task name │ Latency avg (ns) │ Latency med (ns) │ Throughput avg (ops/s) │ Throughput med (ops/s) │ Samples │
├─────────┼────────────────────┼──────────────────┼───────────────────┼────────────────────────┼────────────────────────┼─────────┤
│ 0 │ 'inversifyCurrent' │ '495.47 ± 0.36%' │ '461.00 ± 10.00' │ '2108623 ± 0.01%' │ '2169197 ± 48098' │ 2018305 │
│ 1 │ 'inversify6' │ '6128.1 ± 0.39%' │ '5611.0 ± 139.00' │ '169674 ± 0.06%' │ '178221 ± 4308' │ 163182 │
│ 2 │ 'inversify7' │ '606.13 ± 1.09%' │ '571.00 ± 10.00' │ '1723652 ± 0.01%' │ '1751313 ± 31218' │ 1649814 │
│ 3 │ 'NestJS' │ '9763.3 ± 5.32%' │ '8225.0 ± 301.00' │ '118625 ± 0.07%' │ '121581 ± 4567' │ 102424 │
│ 4 │ 'tsyringe' │ '471.61 ± 0.35%' │ '441.00 ± 11.00' │ '2212173 ± 0.01%' │ '2267574 ± 58008' │ 2120417 │
└─────────┴────────────────────┴──────────────────┴───────────────────┴────────────────────────┴────────────────────────┴─────────┘
inversifyCurrent vs inversify6 Speedup: 12.427x
inversifyCurrent vs inversify7 Speedup: 1.223x
inversifyCurrent vs NestJS Speedup: 17.775x
inversifyCurrent vs tsyringe Speedup: 0.953x
Get complex service in singleton scope
┌─────────┬────────────────────┬───────────────────┬──────────────────┬────────────────────────┬────────────────────────┬─────────┐
│ (index) │ Task name │ Latency avg (ns) │ Latency med (ns) │ Throughput avg (ops/s) │ Throughput med (ops/s) │ Samples │
├─────────┼────────────────────┼───────────────────┼──────────────────┼────────────────────────┼────────────────────────┼─────────┤
│ 0 │ 'inversifyCurrent' │ '275.26 ± 0.12%' │ '251.00 ± 10.00' │ '3798849 ± 0.01%' │ '3984064 ± 152646' │ 3632947 │
│ 1 │ 'inversify6' │ '1262.4 ± 14.64%' │ '1041.0 ± 39.00' │ '930044 ± 0.03%' │ '960615 ± 37389' │ 792150 │
│ 2 │ 'inversify7' │ '310.92 ± 0.56%' │ '281.00 ± 10.00' │ '3423745 ± 0.01%' │ '3558719 ± 122293' │ 3216242 │
│ 3 │ 'NestJS' │ '346.71 ± 1.17%' │ '320.00 ± 10.00' │ '3042048 ± 0.01%' │ '3125000 ± 94697' │ 2884290 │
│ 4 │ 'tsyringe' │ '356.56 ± 7.43%' │ '311.00 ± 10.00' │ '3082710 ± 0.01%' │ '3215434 ± 106825' │ 2804585 │
└─────────┴────────────────────┴───────────────────┴──────────────────┴────────────────────────┴────────────────────────┴─────────┘
inversifyCurrent vs inversify6 Speedup: 4.085x
inversifyCurrent vs inversify7 Speedup: 1.110x
inversifyCurrent vs NestJS Speedup: 1.249x
inversifyCurrent vs tsyringe Speedup: 1.232x
Get complex service in transient scope
┌─────────┬────────────────────┬───────────────────┬────────────────────┬────────────────────────┬────────────────────────┬─────────┐
│ (index) │ Task name │ Latency avg (ns) │ Latency med (ns) │ Throughput avg (ops/s) │ Throughput med (ops/s) │ Samples │
├─────────┼────────────────────┼───────────────────┼────────────────────┼────────────────────────┼────────────────────────┼─────────┤
│ 0 │ 'inversifyCurrent' │ '197848 ± 0.38%' │ '192570 ± 1223.0' │ '5092 ± 0.16%' │ '5193 ± 33' │ 5055 │
│ 1 │ 'inversify6' │ '5718725 ± 0.79%' │ '5612542 ± 102061' │ '175 ± 0.72%' │ '178 ± 3' │ 175 │
│ 2 │ 'inversify7' │ '269296 ± 0.33%' │ '263777 ± 2269.0' │ '3733 ± 0.17%' │ '3791 ± 33' │ 3714 │
│ 3 │ 'NestJS' │ '66308 ± 1.96%' │ '60924 ± 1131.0' │ '16079 ± 0.14%' │ '16414 ± 305' │ 15082 │
│ 4 │ 'tsyringe' │ '218864 ± 0.50%' │ '213247 ± 1884.5' │ '4611 ± 0.18%' │ '4689 ± 42' │ 4570 │
└─────────┴────────────────────┴───────────────────┴────────────────────┴────────────────────────┴────────────────────────┴─────────┘
inversifyCurrent vs inversify6 Speedup: 29.045x
inversifyCurrent vs inversify7 Speedup: 1.364x
inversifyCurrent vs NestJS Speedup: 0.317x
inversifyCurrent vs tsyringe Speedup: 1.104x> root@ benchmarks:container:esm /home/runner/work/monorepo/monorepo
> pnpm run --filter "@inversifyjs/container-benchmarks" benchmarks:run:esm
> @inversifyjs/container-benchmarks@ benchmarks:run:esm /home/runner/work/monorepo/monorepo/packages/container/tools/container-benchmarks
> ./bin/run-esm.mjs
[ESM] Running benchmarks...
Get service in singleton scope
┌─────────┬────────────────────┬──────────────────┬──────────────────┬────────────────────────┬────────────────────────┬─────────┐
│ (index) │ Task name │ Latency avg (ns) │ Latency med (ns) │ Throughput avg (ops/s) │ Throughput med (ops/s) │ Samples │
├─────────┼────────────────────┼──────────────────┼──────────────────┼────────────────────────┼────────────────────────┼─────────┤
│ 0 │ 'inversifyCurrent' │ '289.18 ± 0.17%' │ '260.00 ± 10.00' │ '3671449 ± 0.02%' │ '3846154 ± 153846' │ 3458006 │
│ 1 │ 'inversify6' │ '1012.5 ± 8.05%' │ '902.00 ± 20.00' │ '1078448 ± 0.02%' │ '1108647 ± 25139' │ 987608 │
│ 2 │ 'inversify7' │ '267.03 ± 0.25%' │ '250.00 ± 10.00' │ '3890741 ± 0.01%' │ '4000000 ± 166667' │ 3744929 │
│ 3 │ 'NestJS' │ '340.80 ± 9.27%' │ '291.00 ± 10.00' │ '3296797 ± 0.01%' │ '3436426 ± 114167' │ 2934306 │
│ 4 │ 'tsyringe' │ '309.42 ± 9.86%' │ '261.00 ± 10.00' │ '3707216 ± 0.01%' │ '3831418 ± 152646' │ 3231889 │
└─────────┴────────────────────┴──────────────────┴──────────────────┴────────────────────────┴────────────────────────┴─────────┘
inversifyCurrent vs inversify6 Speedup: 3.404x
inversifyCurrent vs inversify7 Speedup: 0.944x
inversifyCurrent vs NestJS Speedup: 1.114x
inversifyCurrent vs tsyringe Speedup: 0.990x
Get service in transient scope
┌─────────┬────────────────────┬──────────────────┬───────────────────┬────────────────────────┬────────────────────────┬─────────┐
│ (index) │ Task name │ Latency avg (ns) │ Latency med (ns) │ Throughput avg (ops/s) │ Throughput med (ops/s) │ Samples │
├─────────┼────────────────────┼──────────────────┼───────────────────┼────────────────────────┼────────────────────────┼─────────┤
│ 0 │ 'inversifyCurrent' │ '500.82 ± 0.45%' │ '471.00 ± 10.00' │ '2101983 ± 0.01%' │ '2123142 ± 46055' │ 1996745 │
│ 1 │ 'inversify6' │ '5527.6 ± 6.69%' │ '5060.0 ± 81.00' │ '193496 ± 0.04%' │ '197628 ± 3215' │ 180909 │
│ 2 │ 'inversify7' │ '540.29 ± 2.46%' │ '501.00 ± 10.00' │ '1963237 ± 0.01%' │ '1996008 ± 40652' │ 1850848 │
│ 3 │ 'NestJS' │ '9497.8 ± 2.98%' │ '8136.0 ± 309.00' │ '119384 ± 0.07%' │ '122911 ± 4722' │ 105288 │
│ 4 │ 'tsyringe' │ '440.50 ± 1.23%' │ '411.00 ± 19.00' │ '2377837 ± 0.01%' │ '2433090 ± 107509' │ 2270167 │
└─────────┴────────────────────┴──────────────────┴───────────────────┴────────────────────────┴────────────────────────┴─────────┘
inversifyCurrent vs inversify6 Speedup: 10.863x
inversifyCurrent vs inversify7 Speedup: 1.071x
inversifyCurrent vs NestJS Speedup: 17.607x
inversifyCurrent vs tsyringe Speedup: 0.884x
Get complex service in singleton scope
┌─────────┬────────────────────┬───────────────────┬──────────────────┬────────────────────────┬────────────────────────┬─────────┐
│ (index) │ Task name │ Latency avg (ns) │ Latency med (ns) │ Throughput avg (ops/s) │ Throughput med (ops/s) │ Samples │
├─────────┼────────────────────┼───────────────────┼──────────────────┼────────────────────────┼────────────────────────┼─────────┤
│ 0 │ 'inversifyCurrent' │ '289.38 ± 0.20%' │ '261.00 ± 10.00' │ '3640253 ± 0.01%' │ '3831418 ± 141381' │ 3455627 │
│ 1 │ 'inversify6' │ '1020.9 ± 8.73%' │ '902.00 ± 20.00' │ '1077872 ± 0.02%' │ '1108647 ± 24049' │ 979516 │
│ 2 │ 'inversify7' │ '266.17 ± 0.25%' │ '250.00 ± 10.00' │ '3897658 ± 0.01%' │ '4000000 ± 166667' │ 3757042 │
│ 3 │ 'NestJS' │ '369.72 ± 11.40%' │ '320.00 ± 10.00' │ '3059259 ± 0.01%' │ '3125000 ± 100806' │ 2704741 │
│ 4 │ 'tsyringe' │ '303.15 ± 1.98%' │ '271.00 ± 10.00' │ '3553987 ± 0.01%' │ '3690037 ± 131318' │ 3298656 │
└─────────┴────────────────────┴───────────────────┴──────────────────┴────────────────────────┴────────────────────────┴─────────┘
inversifyCurrent vs inversify6 Speedup: 3.377x
inversifyCurrent vs inversify7 Speedup: 0.934x
inversifyCurrent vs NestJS Speedup: 1.190x
inversifyCurrent vs tsyringe Speedup: 1.024x
Get complex service in transient scope
┌─────────┬────────────────────┬───────────────────┬───────────────────┬────────────────────────┬────────────────────────┬─────────┐
│ (index) │ Task name │ Latency avg (ns) │ Latency med (ns) │ Throughput avg (ops/s) │ Throughput med (ops/s) │ Samples │
├─────────┼────────────────────┼───────────────────┼───────────────────┼────────────────────────┼────────────────────────┼─────────┤
│ 0 │ 'inversifyCurrent' │ '236708 ± 0.36%' │ '232205 ± 1293.0' │ '4251 ± 0.17%' │ '4307 ± 24' │ 4225 │
│ 1 │ 'inversify6' │ '5530915 ± 0.93%' │ '5390759 ± 75100' │ '181 ± 0.82%' │ '186 ± 3' │ 181 │
│ 2 │ 'inversify7' │ '204656 ± 0.36%' │ '199924 ± 1543.0' │ '4922 ± 0.17%' │ '5002 ± 39' │ 4887 │
│ 3 │ 'NestJS' │ '65392 ± 2.06%' │ '59822 ± 1062.0' │ '16366 ± 0.14%' │ '16716 ± 297' │ 15293 │
│ 4 │ 'tsyringe' │ '228256 ± 0.47%' │ '222421 ± 2164.0' │ '4419 ± 0.19%' │ '4496 ± 44' │ 4382 │
└─────────┴────────────────────┴───────────────────┴───────────────────┴────────────────────────┴────────────────────────┴─────────┘
inversifyCurrent vs inversify6 Speedup: 23.429x
inversifyCurrent vs inversify7 Speedup: 0.864x
inversifyCurrent vs NestJS Speedup: 0.260x
inversifyCurrent vs tsyringe Speedup: 0.962x |
Changed
inversifybuild on top oftsgo.