Skip to content

Conversation

@jviotti
Copy link
Member

@jviotti jviotti commented Dec 24, 2025

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

Copy link

@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: cb852ae Previous: ef1081e Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 3.115146032234657 ns/iter 3.153761172694506 ns/iter 0.99
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 3.1073092391736337 ns/iter 3.1061700831352668 ns/iter 1.00
Regex_Period_Asterisk 3.1080946878646687 ns/iter 3.1061533798897583 ns/iter 1.00
Regex_Group_Period_Asterisk_Group 3.108120349771007 ns/iter 3.113085302159618 ns/iter 1.00
Regex_Period_Plus 2.8211127661234725 ns/iter 3.106935964766878 ns/iter 0.91
Regex_Period 3.1088334803115534 ns/iter 3.107651117283604 ns/iter 1.00
Regex_Caret_Period_Plus_Dollar 3.108776721386284 ns/iter 3.108262520174615 ns/iter 1.00
Regex_Caret_Group_Period_Plus_Group_Dollar 2.8339040515135063 ns/iter 3.10903714363533 ns/iter 0.91
Regex_Caret_Period_Asterisk_Dollar 3.72971482322992 ns/iter 3.7276593206116257 ns/iter 1.00
Regex_Caret_Group_Period_Asterisk_Group_Dollar 3.7319509737783543 ns/iter 3.735892508577764 ns/iter 1.00
Regex_Caret_X_Hyphen 10.672319966345768 ns/iter 13.052319043154997 ns/iter 0.82
Regex_Period_Md_Dollar 27.375309327041222 ns/iter 27.189735654577987 ns/iter 1.01
Regex_Caret_Slash_Period_Asterisk 6.530031138574527 ns/iter 7.459396913773645 ns/iter 0.88
Regex_Caret_Period_Range_Dollar 3.1095291354997556 ns/iter 4.040998071274688 ns/iter 0.77
Regex_Nested_Backtrack 48.68755950780238 ns/iter 62.61751609981678 ns/iter 0.78
JSON_Array_Of_Objects_Unique 434.8112134401401 ns/iter 437.58236756970234 ns/iter 0.99
JSON_Parse_1 28930.81618837949 ns/iter 29170.581596933946 ns/iter 0.99
JSON_Parse_Real 37293.413910637726 ns/iter 37564.837591938565 ns/iter 0.99
JSON_Parse_Decimal 129323.11815668558 ns/iter 130267.84934052857 ns/iter 0.99
JSON_Fast_Hash_Helm_Chart_Lock 62.115224231930924 ns/iter 62.14666066489544 ns/iter 1.00
JSON_Equality_Helm_Chart_Lock 161.86902348408265 ns/iter 163.88491505497467 ns/iter 0.99
JSON_String_Equal/10 6.53623988245384 ns/iter 6.8432106346256 ns/iter 0.96
JSON_String_Equal/100 7.158766364018863 ns/iter 7.46627523527474 ns/iter 0.96
JSON_String_Equal_Small_By_Perfect_Hash/10 0.9362868305181382 ns/iter 0.9351045152563874 ns/iter 1.00
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 10.258621257283911 ns/iter 14.603781953429072 ns/iter 0.70
JSON_String_Fast_Hash/10 2.7995634703234975 ns/iter 2.797395214858953 ns/iter 1.00
JSON_String_Fast_Hash/100 2.797961736090625 ns/iter 2.7974943926647886 ns/iter 1.00
JSON_String_Key_Hash/10 2.1789837966759835 ns/iter 2.649052275882967 ns/iter 0.82
JSON_String_Key_Hash/100 6.530623136890292 ns/iter 9.019690670255644 ns/iter 0.72
JSON_Object_Defines_Miss_Same_Length 3.7336942875389267 ns/iter 3.733082575194996 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Small 3.7553657773259492 ns/iter 3.739422501529698 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Large 3.738929839927722 ns/iter 3.732348145393052 ns/iter 1.00
Pointer_Object_Traverse 44.28701755984348 ns/iter 44.19885674926296 ns/iter 1.00
Pointer_Object_Try_Traverse 56.00798788917237 ns/iter 53.52019257776511 ns/iter 1.05
Pointer_Push_Back_Pointer_To_Weak_Pointer 308.7340629601936 ns/iter 308.84751182255707 ns/iter 1.00
Schema_Frame_OMC_Instances 199728641.3333465 ns/iter 196167453.3333356 ns/iter 1.02
Schema_Frame_OMC_References 36080407.84210612 ns/iter 35245331.49999911 ns/iter 1.02
Schema_Frame_OMC_Locations 33714915.23809514 ns/iter 32734401.57143103 ns/iter 1.03
Schema_Frame_ISO_Language_Locations 169588468.0000006 ns/iter 167511847.50000903 ns/iter 1.01
Schema_Iterator_ISO_Language 6213485.536363806 ns/iter 6214832.30088516 ns/iter 1.00
Schema_PointerWalker_ISO_Language 4665502.106666584 ns/iter 4619337.503311196 ns/iter 1.01
Schema_Frame_ISO_Language_Locations_To_JSON 145998813.99999505 ns/iter 145454939.39999688 ns/iter 1.00
Schema_Tracker_ISO_Language 46572978.64285479 ns/iter 45224162.666666724 ns/iter 1.03
Schema_Tracker_ISO_Language_To_JSON 25127543.29999704 ns/iter 21836742.90624893 ns/iter 1.15
Schema_Format_ISO_Language_To_JSON 174672571.00003052 ns/iter 173223879.99999478 ns/iter 1.01
Schema_Bundle_Meta_2020_12 2265681.1165037635 ns/iter 2258259.7000010656 ns/iter 1.00
Alterschema_Check_Readibility_ISO_Language_Set_3 295781656.99996364 ns/iter 295710885.5000001 ns/iter 1.00
Alterschema_Check_Readibility_OMC 204504444.33330023 ns/iter 200186902.33333322 ns/iter 1.02

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

Copy link

@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: cb852ae Previous: ef1081e Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 2.2593964537545363 ns/iter 1.7094246538285869 ns/iter 1.32
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.5217091601321306 ns/iter 1.727037809518554 ns/iter 1.46
Regex_Period_Asterisk 2.0955675187498874 ns/iter 1.7553056492513501 ns/iter 1.19
Regex_Group_Period_Asterisk_Group 2.049500116013513 ns/iter 1.7612685233027041 ns/iter 1.16
Regex_Period_Plus 2.2595017182747954 ns/iter 2.2826786493256366 ns/iter 0.99
Regex_Period 2.300295586498378 ns/iter 2.118263047162252 ns/iter 1.09
Regex_Caret_Period_Plus_Dollar 2.0610661108166055 ns/iter 2.7395663046468024 ns/iter 0.75
Regex_Caret_Group_Period_Plus_Group_Dollar 2.3032414543318476 ns/iter 3.304769197480424 ns/iter 0.70
Regex_Caret_Period_Asterisk_Dollar 1.7462589901781918 ns/iter 2.6871794437497147 ns/iter 0.65
Regex_Caret_Group_Period_Asterisk_Group_Dollar 1.8655433802960997 ns/iter 2.275579465969065 ns/iter 0.82
Regex_Caret_X_Hyphen 7.41557014585258 ns/iter 9.736853505907717 ns/iter 0.76
Regex_Period_Md_Dollar 20.844293667574572 ns/iter 31.09738295085085 ns/iter 0.67
Regex_Caret_Slash_Period_Asterisk 4.86877617526266 ns/iter 8.181730693145681 ns/iter 0.60
Regex_Caret_Period_Range_Dollar 2.0361679545612077 ns/iter 2.464939999655886 ns/iter 0.83
Regex_Nested_Backtrack 29.930619002996337 ns/iter 34.96288147831785 ns/iter 0.86
JSON_Array_Of_Objects_Unique 481.02955684101624 ns/iter 368.9839862993551 ns/iter 1.30
JSON_Parse_1 37842.198940223 ns/iter 22524.92352297738 ns/iter 1.68
JSON_Parse_Real 39773.88595901617 ns/iter 26851.664228622085 ns/iter 1.48
JSON_Parse_Decimal 345245.5562622273 ns/iter 263963.96739132993 ns/iter 1.31
JSON_Fast_Hash_Helm_Chart_Lock 80.91945024119417 ns/iter 62.38366471621328 ns/iter 1.30
JSON_Equality_Helm_Chart_Lock 188.49053985920983 ns/iter 149.9386832212449 ns/iter 1.26
JSON_String_Equal/10 13.53615446689152 ns/iter 7.041244893115861 ns/iter 1.92
JSON_String_Equal/100 12.105039806328152 ns/iter 6.853747111036542 ns/iter 1.77
JSON_String_Equal_Small_By_Perfect_Hash/10 0.46585286452409913 ns/iter 0.348675023130084 ns/iter 1.34
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 6.638857243604283 ns/iter 3.496038852882362 ns/iter 1.90
JSON_String_Fast_Hash/10 3.1857008036703016 ns/iter 2.8226884831392987 ns/iter 1.13
JSON_String_Fast_Hash/100 2.660609700919044 ns/iter 2.4608549917869853 ns/iter 1.08
JSON_String_Key_Hash/10 2.12960053117295 ns/iter 1.7807718752871717 ns/iter 1.20
JSON_String_Key_Hash/100 2.995539882725743 ns/iter 2.9949920517403403 ns/iter 1.00
JSON_Object_Defines_Miss_Same_Length 3.7811085376427847 ns/iter 3.4055916982108796 ns/iter 1.11
JSON_Object_Defines_Miss_Too_Small 3.9209794655908548 ns/iter 3.5093789513462315 ns/iter 1.12
JSON_Object_Defines_Miss_Too_Large 4.259376565435838 ns/iter 3.368202683133495 ns/iter 1.26
Pointer_Object_Traverse 22.802064743478557 ns/iter 15.426549816083583 ns/iter 1.48
Pointer_Object_Try_Traverse 29.62486917540711 ns/iter 20.31057760915167 ns/iter 1.46
Pointer_Push_Back_Pointer_To_Weak_Pointer 265.3902884471827 ns/iter 167.87345523166607 ns/iter 1.58
Schema_Frame_OMC_Instances 361487875.0000798 ns/iter 210542722.3333436 ns/iter 1.72
Schema_Frame_OMC_References 61829454.09998411 ns/iter 40708740.17646903 ns/iter 1.52
Schema_Frame_OMC_Locations 63688262.499999836 ns/iter 44654963.562500425 ns/iter 1.43
Schema_Frame_ISO_Language_Locations 242973597.00002137 ns/iter 140879437.50001842 ns/iter 1.72
Schema_Iterator_ISO_Language 16110419.224486 ns/iter 8805654.162500788 ns/iter 1.83
Schema_PointerWalker_ISO_Language 14820937.499998113 ns/iter 7235134.114583985 ns/iter 2.05
Schema_Frame_ISO_Language_Locations_To_JSON 190486152.66668394 ns/iter 84772702.4285762 ns/iter 2.25
Schema_Tracker_ISO_Language 93668857.14283463 ns/iter 52638695.89999785 ns/iter 1.78
Schema_Tracker_ISO_Language_To_JSON 28761381.6800058 ns/iter 19363342.857143704 ns/iter 1.49
Schema_Format_ISO_Language_To_JSON 286861361.0000163 ns/iter 166938385.7500293 ns/iter 1.72
Schema_Bundle_Meta_2020_12 3072071.094125111 ns/iter 2400778.5311484486 ns/iter 1.28
Alterschema_Check_Readibility_ISO_Language_Set_3 354053062.4999292 ns/iter 279938624.99999976 ns/iter 1.26
Alterschema_Check_Readibility_OMC 283389638.6666766 ns/iter 229668180.3333437 ns/iter 1.23

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

Copy link

@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 (windows/msvc)

Details
Benchmark suite Current: cb852ae Previous: ef1081e Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 4.909635399593343 ns/iter 3.1483178082813374 ns/iter 1.56
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 5.535862430564824 ns/iter 3.6401709764525187 ns/iter 1.52
Regex_Period_Asterisk 4.953034283501909 ns/iter 3.255167361712794 ns/iter 1.52
Regex_Group_Period_Asterisk_Group 5.420729197640314 ns/iter 3.707394123673879 ns/iter 1.46
Regex_Period_Plus 4.716942867670496 ns/iter 2.904848814371182 ns/iter 1.62
Regex_Period 4.428872073915014 ns/iter 2.864375757650182 ns/iter 1.55
Regex_Caret_Period_Plus_Dollar 5.598048000001655 ns/iter 3.5051661105965852 ns/iter 1.60
Regex_Caret_Group_Period_Plus_Group_Dollar 5.711331249999928 ns/iter 3.343839380225106 ns/iter 1.71
Regex_Caret_Period_Asterisk_Dollar 5.696637500002615 ns/iter 3.561965975784504 ns/iter 1.60
Regex_Caret_Group_Period_Asterisk_Group_Dollar 5.687429464286099 ns/iter 3.693637939831144 ns/iter 1.54
Regex_Caret_X_Hyphen 9.818975446427608 ns/iter 7.1500848214246355 ns/iter 1.37
Regex_Period_Md_Dollar 44.48895647321141 ns/iter 32.18027678570934 ns/iter 1.38
Regex_Caret_Slash_Period_Asterisk 11.20618789640221 ns/iter 6.904781250004329 ns/iter 1.62
Regex_Caret_Period_Range_Dollar 6.831084000000373 ns/iter 3.6369637435055995 ns/iter 1.88
Regex_Nested_Backtrack 122.98107040263399 ns/iter 93.31491547698751 ns/iter 1.32
JSON_Array_Of_Objects_Unique 585.1649999999609 ns/iter 393.9725850906355 ns/iter 1.49
JSON_Parse_1 97672.36607142341 ns/iter 75242.96874998575 ns/iter 1.30
JSON_Parse_Real 120599.59823218697 ns/iter 96136.39062493462 ns/iter 1.25
JSON_Parse_Decimal 453867.89644001727 ns/iter 359135.65848184295 ns/iter 1.26
JSON_Fast_Hash_Helm_Chart_Lock 70.35034821427644 ns/iter 44.63043750001817 ns/iter 1.58
JSON_Equality_Helm_Chart_Lock 340.4561695920229 ns/iter 253.50794045685342 ns/iter 1.34
JSON_String_Equal/10 16.107017857141923 ns/iter 11.21931557492056 ns/iter 1.44
JSON_String_Equal/100 18.22937142857687 ns/iter 14.098803571414464 ns/iter 1.29
JSON_String_Equal_Small_By_Perfect_Hash/10 2.4573343749992205 ns/iter 1.4865458938531055 ns/iter 1.65
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 15.328102833360385 ns/iter 10.663680755974866 ns/iter 1.44
JSON_String_Fast_Hash/10 3.915593303572353 ns/iter 2.1269215624982962 ns/iter 1.84
JSON_String_Fast_Hash/100 3.924029993868293 ns/iter 2.143781247609094 ns/iter 1.83
JSON_String_Key_Hash/10 5.152725165920143 ns/iter 3.2632263392875824 ns/iter 1.58
JSON_String_Key_Hash/100 16.823631696435573 ns/iter 14.389696141118334 ns/iter 1.17
JSON_Object_Defines_Miss_Same_Length 5.144741964284907 ns/iter 4.337850734669799 ns/iter 1.19
JSON_Object_Defines_Miss_Too_Small 4.819594015706607 ns/iter 4.268802462982288 ns/iter 1.13
JSON_Object_Defines_Miss_Too_Large 4.841676875000189 ns/iter 4.31929687500201 ns/iter 1.12
Pointer_Object_Traverse 60.87622000000011 ns/iter 49.147884045867464 ns/iter 1.24
Pointer_Object_Try_Traverse 83.27296874998272 ns/iter 67.34325000000548 ns/iter 1.24
Pointer_Push_Back_Pointer_To_Weak_Pointer 191.69862983481278 ns/iter 181.7837573022867 ns/iter 1.05
Schema_Frame_OMC_Instances 398686050.0001512 ns/iter 409572350.00041693 ns/iter 0.97
Schema_Frame_OMC_References 82683711.11110657 ns/iter 84991200.0000716 ns/iter 0.97
Schema_Frame_OMC_Locations 76880766.66666651 ns/iter 78290299.99993508 ns/iter 0.98
Schema_Frame_ISO_Language_Locations 332309249.9999802 ns/iter 321434649.999901 ns/iter 1.03
Schema_Iterator_ISO_Language 13877480.000001015 ns/iter 15261968.888888886 ns/iter 0.91
Schema_PointerWalker_ISO_Language 11287123.437497826 ns/iter 12677308.928573439 ns/iter 0.89
Schema_Frame_ISO_Language_Locations_To_JSON 240354800.00005314 ns/iter 229830866.66651312 ns/iter 1.05
Schema_Tracker_ISO_Language 108408383.33327459 ns/iter 112854128.57133842 ns/iter 0.96
Schema_Tracker_ISO_Language_To_JSON 55571890.909091465 ns/iter 58089081.818169765 ns/iter 0.96
Schema_Format_ISO_Language_To_JSON 337086150.00000465 ns/iter 342477799.99941486 ns/iter 0.98
Schema_Bundle_Meta_2020_12 4202481.395356149 ns/iter 4025101.2048582807 ns/iter 1.04
Alterschema_Check_Readibility_ISO_Language_Set_3 498586000.0001594 ns/iter 508788000.00009507 ns/iter 0.98
Alterschema_Check_Readibility_OMC 403180550.0001156 ns/iter 405517599.9997118 ns/iter 0.99

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

Copy link

@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: cb852ae Previous: ef1081e Ratio
Alterschema_Check_Readibility_ISO_Language_Set_3 300731812.9999703 ns/iter 303746913.00005454 ns/iter 0.99
Alterschema_Check_Readibility_OMC 203718040.6666721 ns/iter 213025531.99999845 ns/iter 0.96
Schema_Frame_OMC_Instances 197684444.66672006 ns/iter 203094817.3333703 ns/iter 0.97
Schema_Frame_OMC_References 39230059.44444767 ns/iter 40515129.294108726 ns/iter 0.97
Schema_Frame_OMC_Locations 37204433.26315753 ns/iter 37342037.05263147 ns/iter 1.00
Schema_Frame_ISO_Language_Locations 169206166.99997026 ns/iter 170959461.24999273 ns/iter 0.99
Schema_Iterator_ISO_Language 7275783.608248304 ns/iter 7032151.040404661 ns/iter 1.03
Schema_PointerWalker_ISO_Language 4326048.709876774 ns/iter 4420528.537973697 ns/iter 0.98
Schema_Frame_ISO_Language_Locations_To_JSON 267895774.000029 ns/iter 298446557.6666177 ns/iter 0.90
Schema_Tracker_ISO_Language 47835699.39998718 ns/iter 47951174.866663374 ns/iter 1.00
Schema_Tracker_ISO_Language_To_JSON 32814460.681813464 ns/iter 31837793.227272082 ns/iter 1.03
Schema_Format_ISO_Language_To_JSON 174039212.74990353 ns/iter 175155880.74996912 ns/iter 0.99
Schema_Bundle_Meta_2020_12 2447892.020977538 ns/iter 2449783.3125067814 ns/iter 1.00
Pointer_Object_Traverse 48.994133557341264 ns/iter 50.51457033717142 ns/iter 0.97
Pointer_Object_Try_Traverse 26.17679624469995 ns/iter 26.153224695539734 ns/iter 1.00
Pointer_Push_Back_Pointer_To_Weak_Pointer 177.99123771185862 ns/iter 170.69853273403123 ns/iter 1.04
JSON_Array_Of_Objects_Unique 401.8861338676106 ns/iter 394.36286883930273 ns/iter 1.02
JSON_Parse_1 32816.477469066675 ns/iter 32890.80657158033 ns/iter 1.00
JSON_Parse_Real 44365.337324208485 ns/iter 43771.21377672317 ns/iter 1.01
JSON_Parse_Decimal 156853.02127659155 ns/iter 159191.10394104384 ns/iter 0.99
JSON_Fast_Hash_Helm_Chart_Lock 52.76271021305062 ns/iter 55.35995799826239 ns/iter 0.95
JSON_Equality_Helm_Chart_Lock 159.55391218038417 ns/iter 158.0091645157501 ns/iter 1.01
JSON_String_Equal/10 6.932315513611708 ns/iter 6.926785454488363 ns/iter 1.00
JSON_String_Equal/100 7.549270580971056 ns/iter 7.565166467191502 ns/iter 1.00
JSON_String_Equal_Small_By_Perfect_Hash/10 0.6239015560762841 ns/iter 0.6231300116490427 ns/iter 1.00
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 13.688043410962509 ns/iter 13.758209115867066 ns/iter 0.99
JSON_String_Fast_Hash/10 1.905265658731393 ns/iter 1.90555233272235 ns/iter 1.00
JSON_String_Fast_Hash/100 1.9045385824449899 ns/iter 1.9051853722134573 ns/iter 1.00
JSON_String_Key_Hash/10 2.5293832706032693 ns/iter 2.2956484079000172 ns/iter 1.10
JSON_String_Key_Hash/100 13.375827335817082 ns/iter 13.370704343141837 ns/iter 1.00
JSON_Object_Defines_Miss_Same_Length 2.8008981434379763 ns/iter 2.5011305821185488 ns/iter 1.12
JSON_Object_Defines_Miss_Too_Small 2.808778980817706 ns/iter 2.4881237501908493 ns/iter 1.13
JSON_Object_Defines_Miss_Too_Large 2.798317957822409 ns/iter 2.48947162825732 ns/iter 1.12
Regex_Lower_S_Or_Upper_S_Asterisk 3.111541152363931 ns/iter 3.108723816421289 ns/iter 1.00
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 3.110651800649215 ns/iter 3.10903939082811 ns/iter 1.00
Regex_Period_Asterisk 3.1144412626235756 ns/iter 3.1093824420074356 ns/iter 1.00
Regex_Group_Period_Asterisk_Group 3.1104416852439236 ns/iter 3.10809607584392 ns/iter 1.00
Regex_Period_Plus 3.421886742839679 ns/iter 3.109766258702722 ns/iter 1.10
Regex_Period 3.4427311004522365 ns/iter 3.1104252417774765 ns/iter 1.11
Regex_Caret_Period_Plus_Dollar 3.422180088860842 ns/iter 3.191651001296569 ns/iter 1.07
Regex_Caret_Group_Period_Plus_Group_Dollar 3.421467637495198 ns/iter 3.1149321835565162 ns/iter 1.10
Regex_Caret_Period_Asterisk_Dollar 4.353531061338784 ns/iter 4.3511233905601365 ns/iter 1.00
Regex_Caret_Group_Period_Asterisk_Group_Dollar 4.353470214574721 ns/iter 4.351583983613962 ns/iter 1.00
Regex_Caret_X_Hyphen 13.072707655155874 ns/iter 13.08623181600331 ns/iter 1.00
Regex_Period_Md_Dollar 36.1563243710381 ns/iter 38.585838494434924 ns/iter 0.94
Regex_Caret_Slash_Period_Asterisk 9.01855548044504 ns/iter 8.091436790920591 ns/iter 1.11
Regex_Caret_Period_Range_Dollar 4.35233077226962 ns/iter 4.665175779229902 ns/iter 0.93
Regex_Nested_Backtrack 57.626334910854204 ns/iter 69.89890928741595 ns/iter 0.82

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

Copy link

@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/gcc)

Details
Benchmark suite Current: cb852ae Previous: ef1081e Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 2.7012496933733186 ns/iter 2.435246105183431 ns/iter 1.11
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.926116125446879 ns/iter 2.372020090897732 ns/iter 1.23
Regex_Period_Asterisk 2.973393014765856 ns/iter 2.732983566505497 ns/iter 1.09
Regex_Group_Period_Asterisk_Group 2.6764087664007223 ns/iter 2.7168845886694997 ns/iter 0.99
Regex_Period_Plus 2.363565493382311 ns/iter 2.835149149356395 ns/iter 0.83
Regex_Period 2.4096480790583317 ns/iter 2.6907468052476573 ns/iter 0.90
Regex_Caret_Period_Plus_Dollar 2.6336749606821224 ns/iter 2.7129047440662983 ns/iter 0.97
Regex_Caret_Group_Period_Plus_Group_Dollar 2.352868565135758 ns/iter 2.8405838440559195 ns/iter 0.83
Regex_Caret_Period_Asterisk_Dollar 2.399714251914484 ns/iter 2.6012404049866196 ns/iter 0.92
Regex_Caret_Group_Period_Asterisk_Group_Dollar 2.3009448890951076 ns/iter 2.7002285853386354 ns/iter 0.85
Regex_Caret_X_Hyphen 6.854958871433892 ns/iter 7.520416948699925 ns/iter 0.91
Regex_Period_Md_Dollar 24.304602880638615 ns/iter 32.253118430739555 ns/iter 0.75
Regex_Caret_Slash_Period_Asterisk 5.724625450184196 ns/iter 5.863296574993807 ns/iter 0.98
Regex_Caret_Period_Range_Dollar 2.405052976772356 ns/iter 2.5185395057335556 ns/iter 0.95
Regex_Nested_Backtrack 54.19089209803632 ns/iter 49.67719612752905 ns/iter 1.09
JSON_Array_Of_Objects_Unique 377.34484587865126 ns/iter 291.66224918694974 ns/iter 1.29
JSON_Parse_1 33291.27063623999 ns/iter 26242.23434116944 ns/iter 1.27
JSON_Parse_Real 32438.78545093929 ns/iter 26991.84248880723 ns/iter 1.20
JSON_Parse_Decimal 376267.8778214531 ns/iter 278466.63605933095 ns/iter 1.35
JSON_Fast_Hash_Helm_Chart_Lock 44.93478010572633 ns/iter 34.798670092286486 ns/iter 1.29
JSON_Equality_Helm_Chart_Lock 175.60132452209942 ns/iter 127.26773180518559 ns/iter 1.38
JSON_String_Equal/10 7.131236876264448 ns/iter 6.492786875353388 ns/iter 1.10
JSON_String_Equal/100 7.561912625802662 ns/iter 6.455554358992763 ns/iter 1.17
JSON_String_Equal_Small_By_Perfect_Hash/10 1.210118255544382 ns/iter 1.4138057867962435 ns/iter 0.86
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 4.8335535003351255 ns/iter 5.732164426741405 ns/iter 0.84
JSON_String_Fast_Hash/10 2.3739439614627442 ns/iter 2.1853402813111447 ns/iter 1.09
JSON_String_Fast_Hash/100 2.146423473586785 ns/iter 2.516188809230716 ns/iter 0.85
JSON_String_Key_Hash/10 1.5916675339098452 ns/iter 1.8345338156460957 ns/iter 0.87
JSON_String_Key_Hash/100 2.8513686663874878 ns/iter 3.3854212237326804 ns/iter 0.84
JSON_Object_Defines_Miss_Same_Length 1.9967352723347078 ns/iter 2.2528731309316847 ns/iter 0.89
JSON_Object_Defines_Miss_Too_Small 1.9923578449650754 ns/iter 2.445930733026758 ns/iter 0.81
JSON_Object_Defines_Miss_Too_Large 1.9828298036656162 ns/iter 2.391956691241444 ns/iter 0.83
Pointer_Object_Traverse 53.83369469973776 ns/iter 64.26640500967856 ns/iter 0.84
Pointer_Object_Try_Traverse 38.664830244343705 ns/iter 43.56270143320467 ns/iter 0.89
Pointer_Push_Back_Pointer_To_Weak_Pointer 169.65755406215726 ns/iter 185.77234141265023 ns/iter 0.91
Schema_Frame_OMC_Instances 212081988.6525472 ns/iter 233852307.00174966 ns/iter 0.91
Schema_Frame_OMC_References 54946684.83734131 ns/iter 45288451.512654625 ns/iter 1.21
Schema_Frame_OMC_Locations 48731767.21426157 ns/iter 51892295.479774475 ns/iter 0.94
Schema_Frame_ISO_Language_Locations 236292759.57743326 ns/iter 205263932.54597983 ns/iter 1.15
Schema_Iterator_ISO_Language 8913501.103719076 ns/iter 7897221.414666426 ns/iter 1.13
Schema_PointerWalker_ISO_Language 14876141.267664293 ns/iter 10882001.527598206 ns/iter 1.37
Schema_Frame_ISO_Language_Locations_To_JSON 228162288.66577148 ns/iter 173843026.16119385 ns/iter 1.31
Schema_Tracker_ISO_Language 57756337.25253019 ns/iter 51773115.99254608 ns/iter 1.12
Schema_Tracker_ISO_Language_To_JSON 33579081.29692078 ns/iter 35919296.741485596 ns/iter 0.93
Schema_Format_ISO_Language_To_JSON 227680524.19026694 ns/iter 262885729.47184244 ns/iter 0.87
Schema_Bundle_Meta_2020_12 2541420.5602302407 ns/iter 4139818.722688699 ns/iter 0.61
Alterschema_Check_Readibility_ISO_Language_Set_3 337508440.0177002 ns/iter 380307435.9893799 ns/iter 0.89
Alterschema_Check_Readibility_OMC 295142412.18566895 ns/iter 323671579.3609619 ns/iter 0.91

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

@jviotti jviotti force-pushed the simple-properties-identifiers branch from 7662792 to 414869d Compare December 24, 2025 01:45
@jviotti jviotti marked this pull request as ready for review December 24, 2025 01:55
@jviotti jviotti force-pushed the simple-properties-identifiers branch from 414869d to 58e3b19 Compare December 24, 2025 02:01
@augmentcode
Copy link

augmentcode bot commented Dec 24, 2025

🤖 Augment PR Summary

Summary: This PR adds a new linter rule to encourage simpler, language-friendly JSON Schema property names.

Changes:

  • Introduced SimplePropertiesIdentifiers linter rule to flag properties keys that don’t match [A-Za-z_][A-Za-z0-9_]*.
  • Registered the new rule in the AlterSchema linter pipeline.
  • Added dependency wiring for the regex subsystem (PCRE2 + core regex component) in packaging/config and in the alterschema extension build.
  • Included core regex headers where needed by the alterschema implementation.
  • Added unit tests covering valid/invalid property names, nested schemas, and meta-schema skipping behavior (2020-12 and draft-07).

Technical Notes: The rule is lint-only (no auto-fix) and intentionally skips meta-schemas (including bundled ones) to avoid flagging vocabulary definitions.

🤖 Was this summary useful? React with 👍 or 👎

Copy link

@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. No suggestions at this time.

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

@jviotti jviotti force-pushed the simple-properties-identifiers branch from 58e3b19 to 152d09b Compare December 24, 2025 02:03
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
@jviotti jviotti force-pushed the simple-properties-identifiers branch from 152d09b to cb852ae Compare December 24, 2025 02:05
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.

2 participants