Skip to content

Support BigInt in the JS port#722

Merged
jviotti merged 6 commits intomainfrom
bigint-js
Apr 15, 2026
Merged

Support BigInt in the JS port#722
jviotti merged 6 commits intomainfrom
bigint-js

Conversation

@jviotti
Copy link
Copy Markdown
Member

@jviotti jviotti commented Apr 15, 2026

Fixes: #721
Signed-off-by: Juan Cruz Viotti jv@jviotti.com

jviotti added 2 commits April 15, 2026 14:42
Fixes: #721
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
@jviotti jviotti marked this pull request as ready for review April 15, 2026 18:56
@augmentcode
Copy link
Copy Markdown

augmentcode Bot commented Apr 15, 2026

🤖 Augment PR Summary

Summary: This PR adds BigInt-aware parsing and evaluation to the JavaScript evaluator so large JSON integers aren’t silently truncated during JSON.parse.

Changes:

  • Documented large-integer parsing via JSON.parse(..., Blaze.reviver) and clarified decimal precision limitations.
  • Added Blaze.reviver to convert truncated integer literals into BigInt based on source text.
  • Updated evaluator type detection and numeric assertions (min/max/exclusive bounds, integer-bounded loops, hashes) to accept bigint.
  • Switched schema compilation output parsing and JS test-suite loading to use the reviver.
  • Extended evaluator JSON test vectors with very large integer cases and removed corresponding C++ test cases.

Technical Notes: The implementation relies on the TC39 “JSON.parse source text access” reviver context to detect truncation and preserve large integers as BigInt.

🤖 Was this summary useful? React with 👍 or 👎

Copy link
Copy Markdown

@augmentcode augmentcode Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review completed. 3 suggestions posted.

Fix All in Augment

Comment augment review to trigger a new review at any time.

Comment thread ports/javascript/index.mjs Outdated
}
}

function reviver(_key, value, { source }) {
Copy link
Copy Markdown

@augmentcode augmentcode Bot Apr 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ports/javascript/index.mjs:373 — reviver(_key, value, { source }) destructures the 3rd argument, but in runtimes where JSON.parse only calls revivers with (key, value) (no context), this will throw and break parsing. That would also affect callers like compileSchema() and the JS test runner that now pass Blaze.reviver to JSON.parse.

Severity: high

Other Locations
  • ports/javascript/compile.mjs:53
  • ports/javascript/test.mjs:76
  • ports/javascript/README.md:87
  • ports/javascript/README.md:91

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

Comment thread ports/javascript/index.mjs Outdated
case 30: { var r=R('t'); return r?r+"if(typeof t!=='number')return true;return t<="+value+';':null; }
case 31: { var r=R('t'); return r?r+"if(typeof t!=='number')return true;return t>"+value+';':null; }
case 32: { var r=R('t'); return r?r+"if(typeof t!=='number')return true;return t<"+value+';':null; }
case 29: { var r=R('t'); return r?r+"var tt=typeof t;if(tt!=='number'&&tt!=='bigint')return true;return t>="+value+';':null; }
Copy link
Copy Markdown

@augmentcode augmentcode Bot Apr 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ports/javascript/index.mjs:291 — In compileInstructionToCode (opcodes 29–32), value is concatenated into generated JS source; if value is a bigint (from templates parsed with Blaze.reviver), it will be emitted as a Number literal, losing precision and making native validator comparisons incorrect for large integers. This can cause mismatches between the native validator and the fallback handler path for the same template.

Severity: high

Other Locations
  • ports/javascript/index.mjs:292
  • ports/javascript/index.mjs:293
  • ports/javascript/index.mjs:294

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

Comment thread ports/javascript/index.mjs Outdated
if (divisor === 0) return false;
if (divisor === 0 || divisor === 0n) return false;
if (typeof value === 'bigint' || typeof divisor === 'bigint') {
return BigInt(value) % BigInt(divisor) === 0n;
Copy link
Copy Markdown

@augmentcode augmentcode Bot Apr 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ports/javascript/index.mjs:810 — In isDivisibleBy, when either operand is a bigint the code coerces both via BigInt(value) / BigInt(divisor), which throws if the other operand is a non-integer number (e.g. schema multipleOf: 0.5 with a large-integer instance parsed as bigint). That would turn validation into a runtime exception instead of returning a boolean result.

Severity: high

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

Copy link
Copy Markdown

@cubic-dev-ai cubic-dev-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

5 issues found across 9 files

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="ports/javascript/index.mjs">

<violation number="1" location="ports/javascript/index.mjs:291">
P1: Generated comparison code serializes bigint limits as Number literals, which can silently lose precision and return wrong validation results.</violation>

<violation number="2" location="ports/javascript/index.mjs:373">
P0: The new `reviver` signature destructures a third JSON.parse callback argument that is not available in all supported Node versions, causing a runtime TypeError.</violation>

<violation number="3" location="ports/javascript/index.mjs:810">
P1: `isDivisibleBy` can throw when converting non-integer numbers to BigInt; it should return `false` for non-integral operands instead of crashing.</violation>
</file>

<file name="ports/javascript/README.md">

<violation number="1" location="ports/javascript/README.md:83">
P1: The new docs claim universal engine support and recommend `Blaze.reviver`, but this call crashes on supported Node versions that don't pass reviver `context` to `JSON.parse`. Add a compatibility caveat (or version requirement) before recommending this pattern.</violation>
</file>

<file name="ports/javascript/compile.mjs">

<violation number="1" location="ports/javascript/compile.mjs:53">
P1: This parse call can crash on supported Node versions because `Blaze.reviver` requires a 3rd `JSON.parse` reviver context argument that is `undefined` in Node 18/20.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Comment thread ports/javascript/index.mjs Outdated
Comment thread ports/javascript/index.mjs Outdated
Comment thread ports/javascript/index.mjs Outdated
values. This relies on the
[`JSON.parse` source text
access](https://github.com/tc39/proposal-json-parse-with-source) proposal
(Stage 4, shipped in all major engines):
Copy link
Copy Markdown

@cubic-dev-ai cubic-dev-ai Bot Apr 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1: The new docs claim universal engine support and recommend Blaze.reviver, but this call crashes on supported Node versions that don't pass reviver context to JSON.parse. Add a compatibility caveat (or version requirement) before recommending this pattern.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At ports/javascript/README.md, line 83:

<comment>The new docs claim universal engine support and recommend `Blaze.reviver`, but this call crashes on supported Node versions that don't pass reviver `context` to `JSON.parse`. Add a compatibility caveat (or version requirement) before recommending this pattern.</comment>

<file context>
@@ -68,6 +68,34 @@ const result = evaluator.validate(instance,
+values. This relies on the
+[`JSON.parse` source text
+access](https://github.com/tc39/proposal-json-parse-with-source) proposal
+(Stage 4, shipped in all major engines):
+
+```javascript
</file context>
Suggested change
(Stage 4, shipped in all major engines):
(Stage 4; requires a runtime that implements `JSON.parse` reviver context/source access):
Fix with Cubic

}

return JSON.parse(result.stdout);
return JSON.parse(result.stdout, Blaze.reviver);
Copy link
Copy Markdown

@cubic-dev-ai cubic-dev-ai Bot Apr 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1: This parse call can crash on supported Node versions because Blaze.reviver requires a 3rd JSON.parse reviver context argument that is undefined in Node 18/20.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At ports/javascript/compile.mjs, line 53:

<comment>This parse call can crash on supported Node versions because `Blaze.reviver` requires a 3rd `JSON.parse` reviver context argument that is `undefined` in Node 18/20.</comment>

<file context>
@@ -49,5 +50,5 @@ export function compileSchema(schemaPath, options) {
   }
 
-  return JSON.parse(result.stdout);
+  return JSON.parse(result.stdout, Blaze.reviver);
 }
</file context>
Fix with Cubic

Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
Copy link
Copy Markdown

@cubic-dev-ai cubic-dev-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 4 files (changes from recent commits).

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="ports/javascript/index.mjs">

<violation number="1" location="ports/javascript/index.mjs:379">
P2: The regex only matches lowercase `e` for exponential notation, but JSON allows both `e` and `E` (RFC 8259 §6). When the JSON source contains an uppercase `E` (e.g. `1E+30`), `sourceToBigInt` returns `null` and the truncated `Number` is kept instead of converting to `BigInt`.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Comment thread ports/javascript/index.mjs Outdated
Copy link
Copy Markdown

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmark (macos/llvm)

Details
Benchmark suite Current: 77012c5 Previous: 1533109 Ratio
E2E_Compiler_adaptivecard 69208314.88889688 ns/iter 72416319.44442715 ns/iter 0.96
E2E_Compiler_ansible_meta 34628549.22727067 ns/iter 27875672.949994624 ns/iter 1.24
E2E_Compiler_aws_cdk 314297.64024931163 ns/iter 332184.9307159126 ns/iter 0.95
E2E_Compiler_babelrc 2544902.4193548094 ns/iter 2592861.344481414 ns/iter 0.98
E2E_Compiler_clang_format 19912259.61538499 ns/iter 17386307.54761873 ns/iter 1.15
E2E_Compiler_cmake_presets 31918051.13636354 ns/iter 36374186.52380932 ns/iter 0.88
E2E_Compiler_code_climate 2648482.101083094 ns/iter 3439752.9776788764 ns/iter 0.77
E2E_Compiler_cql2 15313863.568626313 ns/iter 15334814.229163386 ns/iter 1.00
E2E_Compiler_cspell 26259704.034483265 ns/iter 22314163.79310037 ns/iter 1.18
E2E_Compiler_cypress 5903843.898550619 ns/iter 4681981.865284886 ns/iter 1.26
E2E_Compiler_deno 8409298.913043674 ns/iter 8030140.432097535 ns/iter 1.05
E2E_Compiler_dependabot 3963826.8809523783 ns/iter 4018693.6728388653 ns/iter 0.99
E2E_Compiler_draft_04 3070982.501779349 ns/iter 2708124.391940992 ns/iter 1.13
E2E_Compiler_fabric_mod 5090765.522875706 ns/iter 4308204.416108597 ns/iter 1.18
E2E_Compiler_geojson 27583035.999999665 ns/iter 27627983.642860595 ns/iter 1.00
E2E_Compiler_gitpod_configuration 5204331.659999752 ns/iter 5472680.192052931 ns/iter 0.95
E2E_Compiler_helm_chart_lock 654190.517998175 ns/iter 753699.4307958757 ns/iter 0.87
E2E_Compiler_importmap 246057.6171874823 ns/iter 290699.5375408498 ns/iter 0.85
E2E_Compiler_jasmine 1429203.5840001064 ns/iter 1526072.3417084627 ns/iter 0.94
E2E_Compiler_jshintrc 4013544.544827239 ns/iter 3612532.068063718 ns/iter 1.11
E2E_Compiler_jsconfig 22542180.566665594 ns/iter 24593834.624994315 ns/iter 0.92
E2E_Compiler_krakend 171533437.4999884 ns/iter 169284458.4999875 ns/iter 1.01
E2E_Compiler_lazygit 39325217.61110921 ns/iter 42580463.2352939 ns/iter 0.92
E2E_Compiler_lerna 1808443.0229645343 ns/iter 1783329.3411215798 ns/iter 1.01
E2E_Compiler_nest_cli 8973531.653845375 ns/iter 7848988.96385327 ns/iter 1.14
E2E_Compiler_omc 248874583.25000012 ns/iter 212143527.66666403 ns/iter 1.17
E2E_Compiler_omnisharp 6358546.828571542 ns/iter 7804768.564354991 ns/iter 0.81
E2E_Compiler_openapi 28769193.965515647 ns/iter 30316117.259257294 ns/iter 0.95
E2E_Compiler_pre_commit_hooks 4426746.926174324 ns/iter 6862055.147058086 ns/iter 0.65
E2E_Compiler_pulumi 3560490.448780467 ns/iter 7394429.603448708 ns/iter 0.48
E2E_Compiler_semantic_release 1397206.296992425 ns/iter 1625456.2597405075 ns/iter 0.86
E2E_Compiler_stale 1374856.2451840031 ns/iter 1437289.6168036046 ns/iter 0.96
E2E_Compiler_stylecop 6031873.015872623 ns/iter 6040960.500001802 ns/iter 1.00
E2E_Compiler_tmuxinator 1658065.0906735642 ns/iter 1674103.7104621525 ns/iter 0.99
E2E_Compiler_ui5 71847724.99999781 ns/iter 58094715.24999783 ns/iter 1.24
E2E_Compiler_ui5_manifest 468251916.999975 ns/iter 309659833.4999499 ns/iter 1.51
E2E_Compiler_unreal_engine_uproject 4231424.496644296 ns/iter 3980256.0696210703 ns/iter 1.06
E2E_Compiler_users_array 872831.1834863219 ns/iter 823264.2827509681 ns/iter 1.06
E2E_Compiler_vercel 13374699.25454529 ns/iter 15093454.160000876 ns/iter 0.89
E2E_Compiler_yamllint 317216.84644670447 ns/iter 309445.139344354 ns/iter 1.03
E2E_Evaluator_adaptivecard 25592.71589079653 ns/iter 20986.781101287736 ns/iter 1.22
E2E_Evaluator_ansible_meta 199750.351947693 ns/iter 201524.72148619904 ns/iter 0.99
E2E_Evaluator_aws_cdk 37406.90753675084 ns/iter 36223.23160150889 ns/iter 1.03
E2E_Evaluator_babelrc 99308.33942179373 ns/iter 81087.75280770978 ns/iter 1.22
E2E_Evaluator_cerebrum_criminal_case 754690.6474820168 ns/iter 756596.7781007139 ns/iter 1.00
E2E_Evaluator_clang_format 126183.80566929172 ns/iter 101729.475377441 ns/iter 1.24
E2E_Evaluator_cmake_presets 4812250.818627392 ns/iter 3976065.1315789707 ns/iter 1.21
E2E_Evaluator_code_climate 166010.9470456078 ns/iter 142514.28156996937 ns/iter 1.16
E2E_Evaluator_cql2 176895.4160990568 ns/iter 160702.0995907111 ns/iter 1.10
E2E_Evaluator_cspell 537951.4170000448 ns/iter 453051.99110837665 ns/iter 1.19
E2E_Evaluator_cypress 157090.28081024424 ns/iter 169834.89137246186 ns/iter 0.92
E2E_Evaluator_deno 301564.8229312902 ns/iter 271757.05742138723 ns/iter 1.11
E2E_Evaluator_dependabot 352935.29728423705 ns/iter 324005.80293694313 ns/iter 1.09
E2E_Evaluator_draft_04 6171895.8382357415 ns/iter 6091734.480391738 ns/iter 1.01
E2E_Evaluator_fabric_mod 556311.0000000506 ns/iter 527283.9589999876 ns/iter 1.06
E2E_Evaluator_geojson 14217530.111112513 ns/iter 11218905.517856522 ns/iter 1.27
E2E_Evaluator_gitpod_configuration 169009.387860095 ns/iter 168398.00410031673 ns/iter 1.00
E2E_Evaluator_helm_chart_lock 259591.320598043 ns/iter 221338.79229708816 ns/iter 1.17
E2E_Evaluator_importmap 30965.386195973904 ns/iter 31609.600486934887 ns/iter 0.98
E2E_Evaluator_jasmine 80733.43777977224 ns/iter 80383.26674923244 ns/iter 1.00
E2E_Evaluator_jshintrc 910957.3051947844 ns/iter 911929.086351001 ns/iter 1.00
E2E_Evaluator_jsconfig 299354.84138904203 ns/iter 303557.0818738944 ns/iter 0.99
E2E_Evaluator_krakend 128477.28049195635 ns/iter 130476.08226792442 ns/iter 0.98
E2E_Evaluator_lazygit 90543.35697531556 ns/iter 95782.55435201776 ns/iter 0.95
E2E_Evaluator_lerna 112939.666975312 ns/iter 114032.48096656338 ns/iter 0.99
E2E_Evaluator_nest_cli 125272.82360611774 ns/iter 126539.59304003828 ns/iter 0.99
E2E_Evaluator_omc 14096.740977609237 ns/iter 15157.848045369425 ns/iter 0.93
E2E_Evaluator_omnisharp 462199.8175388601 ns/iter 468718.5913705901 ns/iter 0.99
E2E_Evaluator_openapi 8326959.843373746 ns/iter 8493380.199999478 ns/iter 0.98
E2E_Evaluator_pre_commit_hooks 355057.52427655546 ns/iter 354274.2154005849 ns/iter 1.00
E2E_Evaluator_pulumi 501826.79099998495 ns/iter 510321.84158415877 ns/iter 0.98
E2E_Evaluator_semantic_release 79380.19342786432 ns/iter 69356.40142634066 ns/iter 1.14
E2E_Evaluator_stale 120950.93269514092 ns/iter 112449.88221599143 ns/iter 1.08
E2E_Evaluator_stylecop 277824.28628871974 ns/iter 177457.76081427658 ns/iter 1.57
E2E_Evaluator_tmuxinator 80194.80855904613 ns/iter 67821.86705144787 ns/iter 1.18
E2E_Evaluator_ui5 343470.0278811208 ns/iter 333033.76336587896 ns/iter 1.03
E2E_Evaluator_ui5_manifest 1670769.8507854529 ns/iter 1569991.8964056002 ns/iter 1.06
E2E_Evaluator_unreal_engine_uproject 317784.9459337076 ns/iter 306629.94115050224 ns/iter 1.04
E2E_Evaluator_users_array 1140956.4558057724 ns/iter 990599.567099408 ns/iter 1.15
E2E_Evaluator_vercel 222828.45357490247 ns/iter 221837.82642083417 ns/iter 1.00
E2E_Evaluator_yamllint 6227.233096099507 ns/iter 5766.578816684949 ns/iter 1.08
Micro_Draft4_Meta_1_No_Callback 129.3485705241249 ns/iter 124.44752639962385 ns/iter 1.04
Micro_Draft4_Required_Properties 625.4554969292105 ns/iter 611.1919219309909 ns/iter 1.02
Micro_Draft4_Many_Optional_Properties_Minimal_Match 17.389357433252563 ns/iter 15.470831060429534 ns/iter 1.12
Micro_Draft4_Few_Optional_Properties_Minimal_Match 7.317690991027688 ns/iter 7.013045280128441 ns/iter 1.04
Micro_Draft4_Items_Schema 255.55647560790626 ns/iter 252.18243001208063 ns/iter 1.01
Micro_Draft4_Nested_Object 0.7409369277366522 ns/iter 0.6896851802623559 ns/iter 1.07
Micro_Draft4_Properties_Triad_Optional 202.59237233767405 ns/iter 197.11802183344912 ns/iter 1.03
Micro_Draft4_Properties_Triad_Closed 168.41810261523494 ns/iter 163.3251392507899 ns/iter 1.03
Micro_Draft4_Properties_Triad_Required 213.55084308242726 ns/iter 210.75631145426416 ns/iter 1.01
Micro_Draft4_Properties_Closed 36.96772273032553 ns/iter 36.92868173911948 ns/iter 1.00
Micro_Draft4_Non_Recursive_Ref 12.130532216477803 ns/iter 12.504952019097194 ns/iter 0.97
Micro_Draft4_Pattern_Properties_True 131.0874204145329 ns/iter 142.86637806899586 ns/iter 0.92
Micro_Draft4_Ref_To_Single_Property 6.83586466384412 ns/iter 6.921328188152464 ns/iter 0.99
Micro_Draft4_Additional_Properties_Type 25.041557606685164 ns/iter 25.255714807768282 ns/iter 0.99
Micro_Draft4_Nested_Oneof 41.9295706198064 ns/iter 39.935879664607285 ns/iter 1.05
Micro_Draft4_Short_Enum 4.85270790236024 ns/iter 4.815404720595534 ns/iter 1.01
Micro_Draft4_Long_Enum 9.698466123979845 ns/iter 9.788386414376099 ns/iter 0.99
Micro_Draft4_Long_Enum_Short_Strings 6.04213244476775 ns/iter 6.091887147204533 ns/iter 0.99
Micro_Draft4_Type_Object 2.233917156009645 ns/iter 2.1474465149865876 ns/iter 1.04
Micro_Draft4_Ref_Single_100 1629553.586796751 ns/iter 1705452.784504114 ns/iter 0.96
Micro_Draft4_Compile_Ref_Many_Nested 1183036.7147710198 ns/iter 1238996.897163106 ns/iter 0.95
Micro_Draft4_Compile_Wrap 1925901.4423076743 ns/iter 1978389.6627567392 ns/iter 0.97
Micro_Draft6_Property_Names 94.67884009355289 ns/iter 94.2748932371942 ns/iter 1.00
Micro_Draft6_Compile_FHIR 8854197624.99987 ns/iter 8182184374.999907 ns/iter 1.08
Micro_Draft7_If_Then_Else 16.425540156376975 ns/iter 17.68018892745906 ns/iter 0.93
Micro_2019_09_Unevaluated_Properties 24.388641202642873 ns/iter 25.84525386778384 ns/iter 0.94
Micro_2019_09_Compile_Wrap 264397145.99996477 ns/iter 284854583.000083 ns/iter 0.93
Micro_2020_12_Dynamic_Ref 172.70105417800426 ns/iter 184.6624990889735 ns/iter 0.94
Micro_2020_12_Dynamic_Ref_Single 2.0339693041911135 ns/iter 2.1402576070578445 ns/iter 0.95
Micro_2020_12_Simple_Output_Mask 58031.929184365064 ns/iter 60170.001903771226 ns/iter 0.96
Micro_2020_12_Simple_Output_Annotations 80247.50173707632 ns/iter 84226.89586374126 ns/iter 0.95
Micro_2020_12_Compile_NonCircular_Shared_Refs 751951.2587821874 ns/iter 793032.6086954813 ns/iter 0.95
Micro_2020_12_Exhaustive_Deep_Numeric 5079.686309506676 ns/iter 5218.259943822329 ns/iter 0.97
Micro_2020_12_Exhaustive_Deep_Numeric_SimpleOutput 106975.62730460845 ns/iter 113804.26301460285 ns/iter 0.94
Micro_2020_12_Exhaustive_Deep_Numeric_TraceOutput 13807.706457122717 ns/iter 14098.778304477084 ns/iter 0.98
Micro_2020_12_Exhaustive_Deep_Numeric_Fail 86.37469852574965 ns/iter 94.83046497735607 ns/iter 0.91
Micro_2020_12_Exhaustive_Deep_Numeric_Fail_SimpleOutput 4458.873581370349 ns/iter 4805.763237033624 ns/iter 0.93
Alterschema_Check_Readibility_ISO_Language_Set_3 205377819.33330736 ns/iter 228516166.66669846 ns/iter 0.90
Alterschema_Check_Readibility_OMC 50464720.2857151 ns/iter 56054819.49999103 ns/iter 0.90
Alterschema_Check_Readibility_KrakenD 538892208.0001066 ns/iter 598982750.0000046 ns/iter 0.90
Alterschema_Apply_Readibility_KrakenD 69257923417.00026 ns/iter 64665897709.00009 ns/iter 1.07
Alterschema_Check_Invalid_External_Refs 159290791.49998415 ns/iter 157335891.59999612 ns/iter 1.01

This comment was automatically generated by workflow using github-action-benchmark.

Copy link
Copy Markdown

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

JavaScript (macos/llvm)

Details
Benchmark suite Current: 77012c5 Previous: 1533109 Ratio
E2E_Evaluator_adaptivecard 102440 ns 89600 ns 1.14
E2E_Evaluator_ansible-meta 370720 ns 424590 ns 0.87
E2E_Evaluator_aws-cdk 135292 ns 119292 ns 1.13
E2E_Evaluator_babelrc 302125 ns 330316 ns 0.91
E2E_Evaluator_cerebrum-criminal-case 1908403 ns 2060733 ns 0.93
E2E_Evaluator_clang-format 173784 ns 252851 ns 0.69
E2E_Evaluator_cmake-presets 12313012 ns 13257263 ns 0.93
E2E_Evaluator_code-climate 356570 ns 383060 ns 0.93
E2E_Evaluator_cql2 1000824 ns 936096 ns 1.07
E2E_Evaluator_cspell 1429765 ns 1311073 ns 1.09
E2E_Evaluator_cypress 581121 ns 753183 ns 0.77
E2E_Evaluator_deno 750993 ns 805189 ns 0.93
E2E_Evaluator_dependabot 746107 ns 957588 ns 0.78
E2E_Evaluator_draft-04 15700130 ns 15900759 ns 0.99
E2E_Evaluator_fabric-mod 1711006 ns 1886080 ns 0.91
E2E_Evaluator_geojson 17294554 ns 22472911 ns 0.77
E2E_Evaluator_gitpod-configuration 612912 ns 671817 ns 0.91
E2E_Evaluator_helm-chart-lock 1352532 ns 1102264 ns 1.23
E2E_Evaluator_importmap 265832 ns 231736 ns 1.15
E2E_Evaluator_jasmine 225610 ns 292914 ns 0.77
E2E_Evaluator_jsconfig 926846 ns 1336968 ns 0.69
E2E_Evaluator_jshintrc 2165000 ns 2622547 ns 0.83
E2E_Evaluator_krakend 463759 ns 471565 ns 0.98
E2E_Evaluator_lazygit 306506 ns 364717 ns 0.84
E2E_Evaluator_lerna 344970 ns 390585 ns 0.88
E2E_Evaluator_nest-cli 433427 ns 598644 ns 0.72
E2E_Evaluator_omc 70075 ns 72931 ns 0.96
E2E_Evaluator_omnisharp 1030505 ns 1357843 ns 0.76
E2E_Evaluator_openapi 28390168 ns 25282939 ns 1.12
E2E_Evaluator_pre-commit-hooks 1340527 ns 1685489 ns 0.80
E2E_Evaluator_pulumi 1409076 ns 2023625 ns 0.70
E2E_Evaluator_semantic-release 187121 ns 235253 ns 0.80
E2E_Evaluator_stale 310503 ns 383081 ns 0.81
E2E_Evaluator_stylecop 736636 ns 899023 ns 0.82
E2E_Evaluator_tmuxinator 167367 ns 234469 ns 0.71
E2E_Evaluator_ui5 1838983 ns 1564937 ns 1.18
E2E_Evaluator_ui5-manifest 8417353 ns 8110028 ns 1.04
E2E_Evaluator_unreal-engine-uproject 1206527 ns 1470898 ns 0.82
E2E_Evaluator_users-array 1804236 ns 2199834 ns 0.82
E2E_Evaluator_vercel 796551 ns 939130 ns 0.85
E2E_Evaluator_yamllint 26452 ns 27819 ns 0.95

This comment was automatically generated by workflow using github-action-benchmark.

jviotti added 3 commits April 15, 2026 17:59
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
Copy link
Copy Markdown

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmark (linux/llvm)

Details
Benchmark suite Current: 77012c5 Previous: 1533109 Ratio
E2E_Compiler_adaptivecard 63006212.333334595 ns/iter 62336341.00000371 ns/iter 1.01
E2E_Compiler_ansible_meta 29789973.478263285 ns/iter 28280252.041665692 ns/iter 1.05
E2E_Compiler_aws_cdk 362705.36424871034 ns/iter 373576.4644194597 ns/iter 0.97
E2E_Compiler_babelrc 2593288.397769505 ns/iter 2599724.1824817853 ns/iter 1.00
E2E_Compiler_clang_format 18703829.842105564 ns/iter 18199586.368419766 ns/iter 1.03
E2E_Compiler_cmake_presets 25634681.07407348 ns/iter 25208574.785714127 ns/iter 1.02
E2E_Compiler_code_climate 2602271.059259288 ns/iter 2557621.1788321235 ns/iter 1.02
E2E_Compiler_cql2 12816831.236362057 ns/iter 12685527.618182069 ns/iter 1.01
E2E_Compiler_cspell 22780516.29032014 ns/iter 22409311.741934028 ns/iter 1.02
E2E_Compiler_cypress 3900763.631285164 ns/iter 3865143.9285714347 ns/iter 1.01
E2E_Compiler_deno 7760421.933333974 ns/iter 7668897.252746954 ns/iter 1.01
E2E_Compiler_dependabot 3936092.384180925 ns/iter 3877687.287292789 ns/iter 1.02
E2E_Compiler_draft_04 2671033.0719696907 ns/iter 2659466.923954523 ns/iter 1.00
E2E_Compiler_fabric_mod 4792060.130136932 ns/iter 4732066.648648546 ns/iter 1.01
E2E_Compiler_geojson 22396789.580643747 ns/iter 21734095.749998517 ns/iter 1.03
E2E_Compiler_gitpod_configuration 4926909.788732508 ns/iter 4859046.708333321 ns/iter 1.01
E2E_Compiler_helm_chart_lock 684753.6089931157 ns/iter 701851.4018127215 ns/iter 0.98
E2E_Compiler_importmap 272472.28198125656 ns/iter 283990.4272948747 ns/iter 0.96
E2E_Compiler_jasmine 1347786.534615326 ns/iter 1356982.063953403 ns/iter 0.99
E2E_Compiler_jshintrc 4314111.141975782 ns/iter 4318778.641975538 ns/iter 1.00
E2E_Compiler_jsconfig 21948989.406247675 ns/iter 21799273.718750454 ns/iter 1.01
E2E_Compiler_krakend 134786265.9999919 ns/iter 137029489.79999974 ns/iter 0.98
E2E_Compiler_lazygit 34170561.95238339 ns/iter 33049757.809524614 ns/iter 1.03
E2E_Compiler_lerna 1586937.4013603702 ns/iter 1584141.832579184 ns/iter 1.00
E2E_Compiler_nest_cli 7508125.526882278 ns/iter 7403537.234042833 ns/iter 1.01
E2E_Compiler_omc 156120217.80000305 ns/iter 148911617.80000174 ns/iter 1.05
E2E_Compiler_omnisharp 6764237.08737893 ns/iter 6692344.461538478 ns/iter 1.01
E2E_Compiler_openapi 25019410.285714068 ns/iter 24883995.714284472 ns/iter 1.01
E2E_Compiler_pre_commit_hooks 5348132.534350529 ns/iter 5265416.338345898 ns/iter 1.02
E2E_Compiler_pulumi 4020579.568965598 ns/iter 4016705.4628571873 ns/iter 1.00
E2E_Compiler_semantic_release 1573464.760089655 ns/iter 1567944.9662922013 ns/iter 1.00
E2E_Compiler_stale 1544986.5651214346 ns/iter 1544579.050772717 ns/iter 1.00
E2E_Compiler_stylecop 6194959.6725669 ns/iter 6156266.610619483 ns/iter 1.01
E2E_Compiler_tmuxinator 1915684.836065455 ns/iter 1920190.3296703903 ns/iter 1.00
E2E_Compiler_ui5 48224546.14285984 ns/iter 46410044.866665125 ns/iter 1.04
E2E_Compiler_ui5_manifest 303360422.5000204 ns/iter 307618789.99999225 ns/iter 0.99
E2E_Compiler_unreal_engine_uproject 4606414.4539472135 ns/iter 4569191.457516297 ns/iter 1.01
E2E_Compiler_users_array 744471.0478723132 ns/iter 765410.2521930028 ns/iter 0.97
E2E_Compiler_vercel 12317935.912280694 ns/iter 12293551.438596407 ns/iter 1.00
E2E_Compiler_yamllint 336838.0355598568 ns/iter 345263.59782068164 ns/iter 0.98
E2E_Evaluator_adaptivecard 27556.49547203902 ns/iter 24641.76029578214 ns/iter 1.12
E2E_Evaluator_ansible_meta 251583.60957179315 ns/iter 239739.9317792267 ns/iter 1.05
E2E_Evaluator_aws_cdk 42400.85167842677 ns/iter 51124.67816428008 ns/iter 0.83
E2E_Evaluator_babelrc 86016.09191623499 ns/iter 112145.12705809319 ns/iter 0.77
E2E_Evaluator_cerebrum_criminal_case 1071983.5289633675 ns/iter 964053.9345156922 ns/iter 1.11
E2E_Evaluator_clang_format 118435.79993184093 ns/iter 126206.02106589699 ns/iter 0.94
E2E_Evaluator_cmake_presets 4222118.8666665265 ns/iter 4248231.872727295 ns/iter 0.99
E2E_Evaluator_code_climate 148107.53829920918 ns/iter 175509.8019359875 ns/iter 0.84
E2E_Evaluator_cql2 207203.26335877055 ns/iter 202150.4282400794 ns/iter 1.02
E2E_Evaluator_cspell 558665.3733659431 ns/iter 559989.1033654104 ns/iter 1.00
E2E_Evaluator_cypress 165551.93756422403 ns/iter 198279.28062679808 ns/iter 0.83
E2E_Evaluator_deno 256771.1404021768 ns/iter 315557.01253919234 ns/iter 0.81
E2E_Evaluator_dependabot 410547.4157770073 ns/iter 398729.11225074215 ns/iter 1.03
E2E_Evaluator_draft_04 7530175.85714258 ns/iter 7026016.6969696125 ns/iter 1.07
E2E_Evaluator_fabric_mod 658968.5332068106 ns/iter 713398.0446248346 ns/iter 0.92
E2E_Evaluator_geojson 16370770.511629373 ns/iter 15645899.090907795 ns/iter 1.05
E2E_Evaluator_gitpod_configuration 202794.39491183512 ns/iter 233379.45234141228 ns/iter 0.87
E2E_Evaluator_helm_chart_lock 243838.85536332152 ns/iter 352802.08079271927 ns/iter 0.69
E2E_Evaluator_importmap 42428.208898668025 ns/iter 47521.18435678335 ns/iter 0.89
E2E_Evaluator_jasmine 96411.34030853849 ns/iter 116669.08783441916 ns/iter 0.83
E2E_Evaluator_jshintrc 1157960.9256198988 ns/iter 1266407.5597825786 ns/iter 0.91
E2E_Evaluator_jsconfig 418236.17195926455 ns/iter 436388.1960297635 ns/iter 0.96
E2E_Evaluator_krakend 190571.59923245118 ns/iter 216908.08449829987 ns/iter 0.88
E2E_Evaluator_lazygit 125986.97401646354 ns/iter 146075.86813878932 ns/iter 0.86
E2E_Evaluator_lerna 109953.8824084313 ns/iter 144883.88778877843 ns/iter 0.76
E2E_Evaluator_nest_cli 172925.58932543182 ns/iter 180660.86215798566 ns/iter 0.96
E2E_Evaluator_omc 18832.536507426572 ns/iter 19149.958528864583 ns/iter 0.98
E2E_Evaluator_omnisharp 555523.7834395394 ns/iter 625272.3677129928 ns/iter 0.89
E2E_Evaluator_openapi 13579676.659999223 ns/iter 12536629.814814271 ns/iter 1.08
E2E_Evaluator_pre_commit_hooks 470335.93189483444 ns/iter 487847.677061673 ns/iter 0.96
E2E_Evaluator_pulumi 662337.8454976394 ns/iter 662333.1006647791 ns/iter 1.00
E2E_Evaluator_semantic_release 82691.16614944885 ns/iter 98951.6062263426 ns/iter 0.84
E2E_Evaluator_stale 144115.61585615098 ns/iter 162312.9807602082 ns/iter 0.89
E2E_Evaluator_stylecop 272843.3226185955 ns/iter 288840.8061856062 ns/iter 0.94
E2E_Evaluator_tmuxinator 83620.85177280655 ns/iter 97861.35522141079 ns/iter 0.85
E2E_Evaluator_ui5 493211.7096100076 ns/iter 504968.73470837774 ns/iter 0.98
E2E_Evaluator_ui5_manifest 2499249.210714538 ns/iter 2536150.1355311684 ns/iter 0.99
E2E_Evaluator_unreal_engine_uproject 416441.8321470871 ns/iter 428151.5149117738 ns/iter 0.97
E2E_Evaluator_users_array 1311026.6766916898 ns/iter 1267267.6726617492 ns/iter 1.03
E2E_Evaluator_vercel 249996.81818178997 ns/iter 314732.6072385978 ns/iter 0.79
E2E_Evaluator_yamllint 8036.278840512956 ns/iter 8610.961897011219 ns/iter 0.93
Micro_Draft4_Meta_1_No_Callback 198.54455104635892 ns/iter 192.651181181282 ns/iter 1.03
Micro_Draft4_Required_Properties 886.773829891992 ns/iter 874.9015628506281 ns/iter 1.01
Micro_Draft4_Many_Optional_Properties_Minimal_Match 23.74640370461237 ns/iter 31.168316656865287 ns/iter 0.76
Micro_Draft4_Few_Optional_Properties_Minimal_Match 10.644626333765341 ns/iter 11.21289719926853 ns/iter 0.95
Micro_Draft4_Items_Schema 282.7671988365609 ns/iter 288.77111542530184 ns/iter 0.98
Micro_Draft4_Nested_Object 1.4200550304462802 ns/iter 1.780267164331179 ns/iter 0.80
Micro_Draft4_Properties_Triad_Optional 319.3718821211995 ns/iter 325.847017750882 ns/iter 0.98
Micro_Draft4_Properties_Triad_Closed 263.66588057263255 ns/iter 271.77218937889404 ns/iter 0.97
Micro_Draft4_Properties_Triad_Required 330.9736908752241 ns/iter 344.7690414016806 ns/iter 0.96
Micro_Draft4_Properties_Closed 59.2682229371039 ns/iter 58.20796203019129 ns/iter 1.02
Micro_Draft4_Non_Recursive_Ref 12.325092209797932 ns/iter 11.55162555351963 ns/iter 1.07
Micro_Draft4_Pattern_Properties_True 155.18422914356861 ns/iter 161.22054379618783 ns/iter 0.96
Micro_Draft4_Ref_To_Single_Property 10.641244505700893 ns/iter 11.204508498717317 ns/iter 0.95
Micro_Draft4_Additional_Properties_Type 23.748925491753248 ns/iter 21.42237649341509 ns/iter 1.11
Micro_Draft4_Nested_Oneof 54.60866209414343 ns/iter 56.67755953565492 ns/iter 0.96
Micro_Draft4_Short_Enum 13.71159627885705 ns/iter 14.01681117115718 ns/iter 0.98
Micro_Draft4_Long_Enum 13.724302712691834 ns/iter 14.020274915267576 ns/iter 0.98
Micro_Draft4_Long_Enum_Short_Strings 13.725377134726793 ns/iter 14.062924013429704 ns/iter 0.98
Micro_Draft4_Type_Object 3.5172665952341866 ns/iter 3.4213253647916626 ns/iter 1.03
Micro_Draft4_Ref_Single_100 2328069.254966877 ns/iter 2358388.2289563543 ns/iter 0.99
Micro_Draft4_Compile_Ref_Many_Nested 1712280.029268208 ns/iter 1700216.2936893282 ns/iter 1.01
Micro_Draft4_Compile_Wrap 2376894.3288136357 ns/iter 2389771.326599247 ns/iter 0.99
Micro_Draft6_Property_Names 133.73355936704922 ns/iter 135.75911506178295 ns/iter 0.99
Micro_Draft6_Compile_FHIR 15266672447.00002 ns/iter 13395134068.999937 ns/iter 1.14
Micro_Draft7_If_Then_Else 23.701578056637313 ns/iter 22.730095637414554 ns/iter 1.04
Micro_2019_09_Unevaluated_Properties 26.05144606341131 ns/iter 28.166275001599068 ns/iter 0.92
Micro_2019_09_Compile_Wrap 294631445.4999879 ns/iter 285578732.50002784 ns/iter 1.03
Micro_2020_12_Dynamic_Ref 226.38676576042215 ns/iter 231.05450100734555 ns/iter 0.98
Micro_2020_12_Dynamic_Ref_Single 3.5891024925023594 ns/iter 3.421910612022298 ns/iter 1.05
Micro_2020_12_Simple_Output_Mask 63777.58311902292 ns/iter 66401.83810333083 ns/iter 0.96
Micro_2020_12_Simple_Output_Annotations 92358.57784030118 ns/iter 105614.69029850213 ns/iter 0.87
Micro_2020_12_Compile_NonCircular_Shared_Refs 1081566.3472222332 ns/iter 1091112.9720063224 ns/iter 0.99
Micro_2020_12_Exhaustive_Deep_Numeric 9774.897501910458 ns/iter 8799.171177955264 ns/iter 1.11
Micro_2020_12_Exhaustive_Deep_Numeric_SimpleOutput 172437.5073928115 ns/iter 175566.67524999625 ns/iter 0.98
Micro_2020_12_Exhaustive_Deep_Numeric_TraceOutput 23123.796547635335 ns/iter 28836.478301883635 ns/iter 0.80
Micro_2020_12_Exhaustive_Deep_Numeric_Fail 159.94782558582887 ns/iter 141.69080839153148 ns/iter 1.13
Micro_2020_12_Exhaustive_Deep_Numeric_Fail_SimpleOutput 4313.889591118886 ns/iter 4277.504254914707 ns/iter 1.01
Alterschema_Check_Readibility_ISO_Language_Set_3 333824362.00002986 ns/iter 342759082.9999758 ns/iter 0.97
Alterschema_Check_Readibility_OMC 88666025.62500247 ns/iter 84163557.12499523 ns/iter 1.05
Alterschema_Check_Readibility_KrakenD 1285766161.999959 ns/iter 1170670943.999994 ns/iter 1.10
Alterschema_Apply_Readibility_KrakenD 127434786815.00005 ns/iter 117971160835.99997 ns/iter 1.08
Alterschema_Check_Invalid_External_Refs 274814052.66667026 ns/iter 292151028.0000348 ns/iter 0.94

This comment was automatically generated by workflow using github-action-benchmark.

Copy link
Copy Markdown

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

JavaScript (linux/llvm)

Details
Benchmark suite Current: 77012c5 Previous: 1533109 Ratio
E2E_Evaluator_adaptivecard 116202 ns 116140 ns 1.00
E2E_Evaluator_ansible-meta 521798 ns 592482 ns 0.88
E2E_Evaluator_aws-cdk 132463 ns 133565 ns 0.99
E2E_Evaluator_babelrc 298467 ns 324377 ns 0.92
E2E_Evaluator_cerebrum-criminal-case 2646538 ns 2613737 ns 1.01
E2E_Evaluator_clang-format 259749 ns 288461 ns 0.90
E2E_Evaluator_cmake-presets 16959792 ns 21512763 ns 0.79
E2E_Evaluator_code-climate 417189 ns 436901 ns 0.95
E2E_Evaluator_cql2 1173207 ns 1173129 ns 1.00
E2E_Evaluator_cspell 1550713 ns 1638591 ns 0.95
E2E_Evaluator_cypress 810054 ns 875767 ns 0.92
E2E_Evaluator_deno 1040284 ns 1091461 ns 0.95
E2E_Evaluator_dependabot 1032220 ns 1116929 ns 0.92
E2E_Evaluator_draft-04 20442869 ns 22422295 ns 0.91
E2E_Evaluator_fabric-mod 2430634 ns 2510909 ns 0.97
E2E_Evaluator_geojson 26309109 ns 20912549 ns 1.26
E2E_Evaluator_gitpod-configuration 703218 ns 769894 ns 0.91
E2E_Evaluator_helm-chart-lock 1003112 ns 992415 ns 1.01
E2E_Evaluator_importmap 268508 ns 280403 ns 0.96
E2E_Evaluator_jasmine 281555 ns 288103 ns 0.98
E2E_Evaluator_jsconfig 1362426 ns 1341800 ns 1.02
E2E_Evaluator_jshintrc 2910899 ns 3197327 ns 0.91
E2E_Evaluator_krakend 669288 ns 768119 ns 0.87
E2E_Evaluator_lazygit 443928 ns 563181 ns 0.79
E2E_Evaluator_lerna 439989 ns 490702 ns 0.90
E2E_Evaluator_nest-cli 558369 ns 629093 ns 0.89
E2E_Evaluator_omc 88232 ns 85573 ns 1.03
E2E_Evaluator_omnisharp 1458888 ns 1595388 ns 0.91
E2E_Evaluator_openapi 38988400 ns 36454432 ns 1.07
E2E_Evaluator_pre-commit-hooks 1964748 ns 2002684 ns 0.98
E2E_Evaluator_pulumi 1884781 ns 1979848 ns 0.95
E2E_Evaluator_semantic-release 234272 ns 257924 ns 0.91
E2E_Evaluator_stale 360842 ns 450297 ns 0.80
E2E_Evaluator_stylecop 1126711 ns 1208017 ns 0.93
E2E_Evaluator_tmuxinator 213321 ns 222016 ns 0.96
E2E_Evaluator_ui5 2082748 ns 2258198 ns 0.92
E2E_Evaluator_ui5-manifest 9626428 ns 11087903 ns 0.87
E2E_Evaluator_unreal-engine-uproject 1505874 ns 1482714 ns 1.02
E2E_Evaluator_users-array 2349548 ns 3166297 ns 0.74
E2E_Evaluator_vercel 955634 ns 1060125 ns 0.90
E2E_Evaluator_yamllint 26428 ns 24497 ns 1.08

This comment was automatically generated by workflow using github-action-benchmark.

@jviotti jviotti merged commit b15c580 into main Apr 15, 2026
15 checks passed
@jviotti jviotti deleted the bigint-js branch April 15, 2026 22:42
Copy link
Copy Markdown

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmark (linux/gcc)

Details
Benchmark suite Current: 77012c5 Previous: 1533109 Ratio
Alterschema_Check_Readibility_ISO_Language_Set_3 353931232.500031 ns/iter 367762584.5000421 ns/iter 0.96
Alterschema_Check_Readibility_OMC 100259945.42856357 ns/iter 97284175.85714461 ns/iter 1.03
Alterschema_Check_Readibility_KrakenD 1452282987.999979 ns/iter 1361470707.9998424 ns/iter 1.07
Alterschema_Apply_Readibility_KrakenD 133861577835.99992 ns/iter 125873167816.99997 ns/iter 1.06
Alterschema_Check_Invalid_External_Refs 305228409.4999322 ns/iter 340887869.0000847 ns/iter 0.90
Micro_2020_12_Dynamic_Ref 248.9243447499345 ns/iter 266.5706656654626 ns/iter 0.93
Micro_2020_12_Dynamic_Ref_Single 4.226098983062205 ns/iter 4.669727318162937 ns/iter 0.90
Micro_2020_12_Simple_Output_Mask 69673.12179869867 ns/iter 75154.07935656716 ns/iter 0.93
Micro_2020_12_Simple_Output_Annotations 102513.81857956281 ns/iter 114479.41628364654 ns/iter 0.90
Micro_2020_12_Compile_NonCircular_Shared_Refs 1192126.7322034095 ns/iter 1228674.4639717662 ns/iter 0.97
Micro_2020_12_Exhaustive_Deep_Numeric 8506.896241379796 ns/iter 8247.049417410342 ns/iter 1.03
Micro_2020_12_Exhaustive_Deep_Numeric_SimpleOutput 160888.05033235648 ns/iter 166743.41666663124 ns/iter 0.96
Micro_2020_12_Exhaustive_Deep_Numeric_TraceOutput 26726.583310956154 ns/iter 27285.69506473623 ns/iter 0.98
Micro_2020_12_Exhaustive_Deep_Numeric_Fail 133.51090323418066 ns/iter 135.39341583246332 ns/iter 0.99
Micro_2020_12_Exhaustive_Deep_Numeric_Fail_SimpleOutput 4383.858121312192 ns/iter 4855.295378028296 ns/iter 0.90
Micro_2019_09_Unevaluated_Properties 28.88021781528885 ns/iter 29.9323461936695 ns/iter 0.96
Micro_2019_09_Compile_Wrap 329885203.49999815 ns/iter 309123736.4999415 ns/iter 1.07
Micro_Draft7_If_Then_Else 25.11853514976795 ns/iter 24.318892441372103 ns/iter 1.03
Micro_Draft6_Property_Names 142.58930013225427 ns/iter 149.43987220271933 ns/iter 0.95
Micro_Draft6_Compile_FHIR 15159485083.000164 ns/iter 13669409225.999971 ns/iter 1.11
Micro_Draft4_Meta_1_No_Callback 173.70504720868473 ns/iter 182.93683907937734 ns/iter 0.95
Micro_Draft4_Required_Properties 845.5644443310715 ns/iter 849.1863018051037 ns/iter 1.00
Micro_Draft4_Many_Optional_Properties_Minimal_Match 21.799749483040017 ns/iter 21.563924414172266 ns/iter 1.01
Micro_Draft4_Few_Optional_Properties_Minimal_Match 12.688556306635746 ns/iter 13.09573240416039 ns/iter 0.97
Micro_Draft4_Items_Schema 318.2437910838312 ns/iter 325.0988734197416 ns/iter 0.98
Micro_Draft4_Nested_Object 1.7582028729803258 ns/iter 1.5584259694562006 ns/iter 1.13
Micro_Draft4_Properties_Triad_Optional 400.32825223338625 ns/iter 392.1583823739716 ns/iter 1.02
Micro_Draft4_Properties_Triad_Closed 335.62532330410045 ns/iter 323.82438778475256 ns/iter 1.04
Micro_Draft4_Properties_Triad_Required 422.050404637599 ns/iter 404.3046135251753 ns/iter 1.04
Micro_Draft4_Properties_Closed 62.20909739468707 ns/iter 64.27226800208105 ns/iter 0.97
Micro_Draft4_Non_Recursive_Ref 9.031052912857382 ns/iter 9.986521798154824 ns/iter 0.90
Micro_Draft4_Pattern_Properties_True 200.4253002365919 ns/iter 235.06422296494839 ns/iter 0.85
Micro_Draft4_Ref_To_Single_Property 13.03417850608388 ns/iter 13.426714954093425 ns/iter 0.97
Micro_Draft4_Additional_Properties_Type 14.542778901413598 ns/iter 14.63463756228243 ns/iter 0.99
Micro_Draft4_Nested_Oneof 66.19207833007755 ns/iter 66.36585222420975 ns/iter 1.00
Micro_Draft4_Short_Enum 14.842301792143004 ns/iter 14.767978690131086 ns/iter 1.01
Micro_Draft4_Long_Enum 14.392197548852776 ns/iter 14.973746615568022 ns/iter 0.96
Micro_Draft4_Long_Enum_Short_Strings 14.779932486519328 ns/iter 14.733892124773744 ns/iter 1.00
Micro_Draft4_Type_Object 4.575504137284375 ns/iter 4.982629268145954 ns/iter 0.92
Micro_Draft4_Ref_Single_100 2528695.8561149496 ns/iter 2562802.659340477 ns/iter 0.99
Micro_Draft4_Compile_Ref_Many_Nested 1839031.800524847 ns/iter 1848202.1451190286 ns/iter 1.00
Micro_Draft4_Compile_Wrap 2634318.22556389 ns/iter 2621691.865168488 ns/iter 1.00
E2E_Compiler_adaptivecard 68855912.69999622 ns/iter 67532678.70001309 ns/iter 1.02
E2E_Compiler_ansible_meta 31135323.59090889 ns/iter 30422667.608698487 ns/iter 1.02
E2E_Compiler_aws_cdk 399312.26925274724 ns/iter 423600.54264971934 ns/iter 0.94
E2E_Compiler_babelrc 2823806.329268233 ns/iter 2835247.0121459733 ns/iter 1.00
E2E_Compiler_clang_format 20155519.914279856 ns/iter 19946140.000001833 ns/iter 1.01
E2E_Compiler_cmake_presets 28047168.200000666 ns/iter 27322213.807687707 ns/iter 1.03
E2E_Compiler_code_climate 2842720.211381534 ns/iter 2832445.064777968 ns/iter 1.00
E2E_Compiler_cql2 14136306.387756903 ns/iter 14312516.326531388 ns/iter 0.99
E2E_Compiler_cspell 24804452.107137617 ns/iter 24177491.068963595 ns/iter 1.03
E2E_Compiler_cypress 4263893.167701934 ns/iter 4222938.987951754 ns/iter 1.01
E2E_Compiler_deno 8406434.337349497 ns/iter 8333238.619045569 ns/iter 1.01
E2E_Compiler_dependabot 4307111.296295969 ns/iter 4281107.165645064 ns/iter 1.01
E2E_Compiler_draft_04 2943357.739496116 ns/iter 2992418.3717952487 ns/iter 0.98
E2E_Compiler_fabric_mod 5222623.820895594 ns/iter 5248134.9925372675 ns/iter 1.00
E2E_Compiler_geojson 24665715.53571839 ns/iter 24178881.31034143 ns/iter 1.02
E2E_Compiler_gitpod_configuration 5385628.038167491 ns/iter 5373899.782946603 ns/iter 1.00
E2E_Compiler_helm_chart_lock 740888.2014691964 ns/iter 769368.4151984054 ns/iter 0.96
E2E_Compiler_importmap 298396.474178409 ns/iter 316996.36001810903 ns/iter 0.94
E2E_Compiler_jasmine 1476598.0274262107 ns/iter 1499752.8294243277 ns/iter 0.98
E2E_Compiler_jshintrc 4726645.432431515 ns/iter 4763214.802719971 ns/iter 0.99
E2E_Compiler_jsconfig 23968905.48275537 ns/iter 23550987.466660444 ns/iter 1.02
E2E_Compiler_krakend 150818382.80002558 ns/iter 145783382.19998842 ns/iter 1.03
E2E_Compiler_lazygit 37268756.00000312 ns/iter 35873936.84999825 ns/iter 1.04
E2E_Compiler_lerna 1728125.9283949852 ns/iter 1771178.8813130623 ns/iter 0.98
E2E_Compiler_nest_cli 8131665.709303762 ns/iter 8103181.779069716 ns/iter 1.00
E2E_Compiler_omc 173877150.75000188 ns/iter 165439096.49999478 ns/iter 1.05
E2E_Compiler_omnisharp 7351423.468750321 ns/iter 7273442.822916347 ns/iter 1.01
E2E_Compiler_openapi 27196912.923080582 ns/iter 27321154.538465355 ns/iter 1.00
E2E_Compiler_pre_commit_hooks 5808239.016666523 ns/iter 5818766.92561963 ns/iter 1.00
E2E_Compiler_pulumi 4413448.899371726 ns/iter 4437458.496815719 ns/iter 0.99
E2E_Compiler_semantic_release 1705838.3381992865 ns/iter 1740816.5558313506 ns/iter 0.98
E2E_Compiler_stale 1728198.0530121902 ns/iter 1703629.1873478536 ns/iter 1.01
E2E_Compiler_stylecop 6537393.429905967 ns/iter 6364459.082568821 ns/iter 1.03
E2E_Compiler_tmuxinator 2108162.4970057434 ns/iter 2244931.8302472387 ns/iter 0.94
E2E_Compiler_ui5 52269771.92308788 ns/iter 49219905.99999455 ns/iter 1.06
E2E_Compiler_ui5_manifest 349240987.00003016 ns/iter 330887586.5000118 ns/iter 1.06
E2E_Compiler_unreal_engine_uproject 5020927.364284944 ns/iter 4991722.589928934 ns/iter 1.01
E2E_Compiler_users_array 837470.4253285057 ns/iter 883293.2903629746 ns/iter 0.95
E2E_Compiler_vercel 13508585.596154122 ns/iter 13269923.09433973 ns/iter 1.02
E2E_Compiler_yamllint 367673.1449579935 ns/iter 393659.02128845325 ns/iter 0.93
E2E_Evaluator_adaptivecard 23516.45354494833 ns/iter 22800.09323195509 ns/iter 1.03
E2E_Evaluator_ansible_meta 224293.40038501073 ns/iter 258252.64555588117 ns/iter 0.87
E2E_Evaluator_aws_cdk 43617.406963009125 ns/iter 54151.584165063025 ns/iter 0.81
E2E_Evaluator_babelrc 84004.63221588965 ns/iter 104766.8296351654 ns/iter 0.80
E2E_Evaluator_cerebrum_criminal_case 1099091.0341086616 ns/iter 1031441.6754001783 ns/iter 1.07
E2E_Evaluator_clang_format 99973.31826610569 ns/iter 114294.8127100983 ns/iter 0.87
E2E_Evaluator_cmake_presets 4741822.355370926 ns/iter 4543495.814102582 ns/iter 1.04
E2E_Evaluator_code_climate 159526.18402935646 ns/iter 184671.28332002414 ns/iter 0.86
E2E_Evaluator_cql2 199356.936170216 ns/iter 217186.4269077441 ns/iter 0.92
E2E_Evaluator_cspell 517593.87613978557 ns/iter 554120.344881851 ns/iter 0.93
E2E_Evaluator_cypress 143471.6472285234 ns/iter 175830.3593398091 ns/iter 0.82
E2E_Evaluator_deno 284119.13063945656 ns/iter 334121.8055958204 ns/iter 0.85
E2E_Evaluator_dependabot 420000.97303771775 ns/iter 443792.7448717661 ns/iter 0.95
E2E_Evaluator_draft_04 8042571.170732096 ns/iter 8330406.329412867 ns/iter 0.97
E2E_Evaluator_fabric_mod 710426.0898759639 ns/iter 766768.7309754074 ns/iter 0.93
E2E_Evaluator_geojson 17180025.17499713 ns/iter 17013152.190478258 ns/iter 1.01
E2E_Evaluator_gitpod_configuration 222507.8297531607 ns/iter 258023.08926596006 ns/iter 0.86
E2E_Evaluator_helm_chart_lock 217577.44371480565 ns/iter 322809.0559889911 ns/iter 0.67
E2E_Evaluator_importmap 41559.79377295901 ns/iter 48573.49305605672 ns/iter 0.86
E2E_Evaluator_jasmine 105470.55080762018 ns/iter 116981.76670513708 ns/iter 0.90
E2E_Evaluator_jshintrc 1012665.4363103915 ns/iter 1055812.199999986 ns/iter 0.96
E2E_Evaluator_jsconfig 377690.0920703054 ns/iter 411255.41946689284 ns/iter 0.92
E2E_Evaluator_krakend 186956.64424107806 ns/iter 212781.20137374464 ns/iter 0.88
E2E_Evaluator_lazygit 129823.735736767 ns/iter 137954.11488091404 ns/iter 0.94
E2E_Evaluator_lerna 124235.21120311478 ns/iter 157718.28718066378 ns/iter 0.79
E2E_Evaluator_nest_cli 179871.53497942214 ns/iter 196657.4422645774 ns/iter 0.91
E2E_Evaluator_omc 19140.733550139565 ns/iter 18877.021686488115 ns/iter 1.01
E2E_Evaluator_omnisharp 519907.58968612354 ns/iter 565303.8414731245 ns/iter 0.92
E2E_Evaluator_openapi 14764843.13043428 ns/iter 13240021.764708145 ns/iter 1.12
E2E_Evaluator_pre_commit_hooks 465783.56792578986 ns/iter 515103.00145760656 ns/iter 0.90
E2E_Evaluator_pulumi 725872.8659044323 ns/iter 746163.8008214287 ns/iter 0.97
E2E_Evaluator_semantic_release 93621.68818818753 ns/iter 101391.00826085849 ns/iter 0.92
E2E_Evaluator_stale 151408.20661511034 ns/iter 156117.04612624837 ns/iter 0.97
E2E_Evaluator_stylecop 284695.2300812954 ns/iter 309136.72139091196 ns/iter 0.92
E2E_Evaluator_tmuxinator 89412.8022542314 ns/iter 102409.55605888358 ns/iter 0.87
E2E_Evaluator_ui5 503749.0670995021 ns/iter 539099.9313036094 ns/iter 0.93
E2E_Evaluator_ui5_manifest 2670195.4653844954 ns/iter 2790882.0806454704 ns/iter 0.96
E2E_Evaluator_unreal_engine_uproject 436535.8282514518 ns/iter 473676.580013532 ns/iter 0.92
E2E_Evaluator_users_array 1485987.7410526676 ns/iter 1550932.8035323073 ns/iter 0.96
E2E_Evaluator_vercel 264482.4676258748 ns/iter 317947.39516863215 ns/iter 0.83
E2E_Evaluator_yamllint 9201.299105107202 ns/iter 10920.573756926544 ns/iter 0.84

This comment was automatically generated by workflow using github-action-benchmark.

Copy link
Copy Markdown

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

JavaScript (linux/gcc)

Details
Benchmark suite Current: 77012c5 Previous: 1533109 Ratio
E2E_Evaluator_adaptivecard 116097 ns 117239 ns 0.99
E2E_Evaluator_ansible-meta 529304 ns 605355 ns 0.87
E2E_Evaluator_aws-cdk 127058 ns 139813 ns 0.91
E2E_Evaluator_babelrc 310967 ns 332245 ns 0.94
E2E_Evaluator_cerebrum-criminal-case 2744501 ns 2681123 ns 1.02
E2E_Evaluator_clang-format 259087 ns 288453 ns 0.90
E2E_Evaluator_cmake-presets 18530092 ns 19746360 ns 0.94
E2E_Evaluator_code-climate 416585 ns 435422 ns 0.96
E2E_Evaluator_cql2 1181157 ns 1193192 ns 0.99
E2E_Evaluator_cspell 1627390 ns 1650195 ns 0.99
E2E_Evaluator_cypress 839151 ns 906526 ns 0.93
E2E_Evaluator_deno 1028527 ns 1100285 ns 0.93
E2E_Evaluator_dependabot 1079631 ns 1143077 ns 0.94
E2E_Evaluator_draft-04 21583698 ns 20191354 ns 1.07
E2E_Evaluator_fabric-mod 2470571 ns 2590209 ns 0.95
E2E_Evaluator_geojson 27709302 ns 22174510 ns 1.25
E2E_Evaluator_gitpod-configuration 707036 ns 769496 ns 0.92
E2E_Evaluator_helm-chart-lock 1096971 ns 992153 ns 1.11
E2E_Evaluator_importmap 269175 ns 298126 ns 0.90
E2E_Evaluator_jasmine 279371 ns 321060 ns 0.87
E2E_Evaluator_jsconfig 1425272 ns 1443141 ns 0.99
E2E_Evaluator_jshintrc 2994691 ns 3333850 ns 0.90
E2E_Evaluator_krakend 675182 ns 780921 ns 0.86
E2E_Evaluator_lazygit 445096 ns 589357 ns 0.76
E2E_Evaluator_lerna 445950 ns 476927 ns 0.94
E2E_Evaluator_nest-cli 560657 ns 645539 ns 0.87
E2E_Evaluator_omc 89157 ns 87639 ns 1.02
E2E_Evaluator_omnisharp 1478810 ns 1644835 ns 0.90
E2E_Evaluator_openapi 40149579 ns 40509082 ns 0.99
E2E_Evaluator_pre-commit-hooks 1951424 ns 2145103 ns 0.91
E2E_Evaluator_pulumi 1916050 ns 2089830 ns 0.92
E2E_Evaluator_semantic-release 227888 ns 270231 ns 0.84
E2E_Evaluator_stale 367202 ns 444497 ns 0.83
E2E_Evaluator_stylecop 1139180 ns 1285898 ns 0.89
E2E_Evaluator_tmuxinator 213837 ns 232581 ns 0.92
E2E_Evaluator_ui5 2010117 ns 2267676 ns 0.89
E2E_Evaluator_ui5-manifest 9636699 ns 11671882 ns 0.83
E2E_Evaluator_unreal-engine-uproject 1534297 ns 1588861 ns 0.97
E2E_Evaluator_users-array 2386024 ns 3403466 ns 0.70
E2E_Evaluator_vercel 962504 ns 1077406 ns 0.89
E2E_Evaluator_yamllint 28700 ns 25165 ns 1.14

This comment was automatically generated by workflow using github-action-benchmark.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Use JSON.parse reviver to preserve high-precision numbers in the JavaScript port

1 participant