typescript-runtime-type-benchmarks icon indicating copy to clipboard operation
typescript-runtime-type-benchmarks copied to clipboard

Updates ts-runtime-checks

Open mmamedel opened this issue 3 years ago • 9 comments

Library developer added this new feature that allows parseStrict and assertStrict... so I'm updating it. One thing I have noticed is that the docs svg has not updated one last pr... is this being re-created at build time or is something I need to add to the pr?

mmamedel avatar Jul 21 '22 23:07 mmamedel

One thing I have noticed is that the docs svg has not updated one last pr... is this being re-created at build time or is something I need to add to the pr?

All of the benchmark results and graphs should regenerate using GitHub Actions.

Can you please point out a specific case where it did not refresh?


Also:

This branch cannot be rebased due to conflicts

moltar avatar Jul 22 '22 14:07 moltar

One thing I have noticed is that the docs svg has not updated one last pr... is this being re-created at build time or is something I need to add to the pr?

All of the benchmark results and graphs should regenerate using GitHub Actions.

Can you please point out a specific case where it did not refresh?

Also:

This branch cannot be rebased due to conflicts

I notice that docs/results/preview.svg shown in README.md is two months old, but the "top 3" packages changed: ts-runtime-checks is now the fastest in Loose Assertion.

I quoted "top 3" because that's the SVG title, but it actually shows top 4.

I merged master into my branch and I just see:

This branch has no conflicts with the base branch

Let me know if there is still a problem. Thank you

mmamedel avatar Jul 23 '22 12:07 mmamedel

I think the preview is toggled off by env? https://github.com/moltar/typescript-runtime-type-benchmarks/blob/929a5d0bb5d3a85dd7522983c2ce91d9bf208d0f/benchmarks/helpers/main.ts#L17

@hoeck Is the preview image static and needs to be manually re-generated or do we need to set the env var in the GitHub config to trigger the process?

moltar avatar Jul 24 '22 09:07 moltar

@moltar no the image is generated during one of the test runs that has the configured NODE_VERSION_FOR_PREVIEW:

https://github.com/moltar/typescript-runtime-type-benchmarks/blob/b9a326534d2ae7b57a7416a1e22d5ba31f8e0de5/benchmarks/helpers/main.ts#L10

Forgot to update this to 18 in my node-version update. I'll create a PR that fixes this and puts a note in the workflow so the next person updating node versions doesn't forget to update this.

That TEST_PREVIEW_GENERATION is to generate the image during development without running the full benchmark to reduce the update-reload cyle to a few seconds instead of minutes.

hoeck avatar Jul 24 '22 09:07 hoeck

@mmamedel thx for catching the outdated preview.

I quoted "top 3" because that's the SVG title, but it actually shows top 4.

It shows the top 3 packages and one bar that shows the median score of the remaining packages ("...rest"). Was meant to be more of a colorful eye catcher that still does show something useful but takes not too much space.

hoeck avatar Jul 24 '22 09:07 hoeck

@mmamedel thx for catching the outdated preview.

I quoted "top 3" because that's the SVG title, but it actually shows top 4.

It shows the top 3 packages and one bar that shows the median score of the remaining packages ("...rest"). Was meant to be more of a colorful eye catcher that still does show something useful but takes not too much space.

Oh, got it.. Question: how hard would it be to order the top 3 preview by result instead of by name?

mmamedel avatar Jul 24 '22 16:07 mmamedel

Question: how hard would it be to order the top 3 preview by result instead of by name?

Not sure any more but I think I tried to sort it, prepareValues is sorted by ops and the vega spec contains a sort param for each graph too:

https://github.com/moltar/typescript-runtime-type-benchmarks/blob/5dcaeb6c74e403ae7e40b5210dc9797ff85b35fb/benchmarks/helpers/graph.ts#L125

but because of the graph format "repeat" (rows & columns with 1 embedded bar chart) it somehow is ignoring the sort and falling back to something else.

Mhhh, in app.tsx I use a completely different approach to sorting:

https://github.com/moltar/typescript-runtime-type-benchmarks/blob/5dcaeb6c74e403ae7e40b5210dc9797ff85b35fb/docs/app.tsx#L210

maybe I should try that in the preview image.

hoeck avatar Jul 25 '22 08:07 hoeck

@hoeck Do you any to include the update to preview on this pr or leave it to another one?

mmamedel avatar Aug 03 '22 03:08 mmamedel

@hoeck Do you any to include the update to preview on this pr or leave it to another one?

@mmamedel no I will do that in a separate PR

hoeck avatar Aug 03 '22 06:08 hoeck

Creator of ts-runtime-checks here: is this going to be merged?

GoogleFeud avatar Oct 15 '22 06:10 GoogleFeud

@mmamedel Could you fix up the PR, please? Thanks!

moltar avatar Oct 15 '22 08:10 moltar