Skip to content

Implement supports_token_endpoint_auth_method proxies - #2694

Merged
jviotti merged 1 commit into
mainfrom
token-endpoint-proxy
Jul 29, 2026
Merged

Implement supports_token_endpoint_auth_method proxies#2694
jviotti merged 1 commit into
mainfrom
token-endpoint-proxy

Conversation

@jviotti

@jviotti jviotti commented Jul 29, 2026

Copy link
Copy Markdown
Member

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

Review in cubic

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

augmentcode Bot commented Jul 29, 2026

Copy link
Copy Markdown
🤖 Augment PR Summary

Summary: This PR exposes token endpoint auth-method support checks on OIDCProviderMetadata by proxying to the underlying OAuth server metadata.

Changes:

  • Adds OIDCProviderMetadata::supports_token_endpoint_auth_method() with the documented default behavior when the discovery field is absent.
  • Implements the proxy in oidc_metadata.cc by delegating to the internal OAuth metadata instance.
  • Adds tests covering both the default behavior (absent list => client_secret_basic) and explicit advertised methods.

Technical Notes: The behavior matches the existing OAuth server metadata implementation (RFC 8414 default) while being surfaced through the OIDC-facing API.

🤖 Was this summary useful? React with 👍 or 👎

@augmentcode augmentcode Bot left a comment

Copy link
Copy Markdown

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.

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

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

No issues found across 3 files

Re-trigger cubic

@jviotti
jviotti merged commit d014705 into main Jul 29, 2026
12 checks passed
@jviotti
jviotti deleted the token-endpoint-proxy branch July 29, 2026 17:43

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

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: a75083a Previous: 89051cb Ratio
JOSE_VerifySignature_RS256 24467.638694722304 ns/iter 22072.311047337076 ns/iter 1.11
JOSE_VerifySignature_ES512 642084.201101915 ns/iter 594720.0653432676 ns/iter 1.08
GZIP_Compress_ISO_Language_Set_3_Locations 39510214.83332953 ns/iter 36545685.15789953 ns/iter 1.08
GZIP_Decompress_ISO_Language_Set_3_Locations 4059751.812865322 ns/iter 4233871.131736624 ns/iter 0.96
GZIP_Compress_ISO_Language_Set_3_Schema 2289788.55555544 ns/iter 2038702.4599407734 ns/iter 1.12
GZIP_Decompress_ISO_Language_Set_3_Schema 276633.58993398224 ns/iter 374828.4847020691 ns/iter 0.74
HTML_Build_Table_100000 72318755.00000343 ns/iter 65972969.72727856 ns/iter 1.10
HTML_Render_Table_100000 1947261.231843549 ns/iter 1988075.7926138416 ns/iter 0.98
JSONLD_Catalog_Annotation_List_Populate 1324116.0375233998 ns/iter 1311565.3651685151 ns/iter 1.01
JSONLD_Catalog_Materialize 6927424.000000114 ns/iter 6951950.350515655 ns/iter 1.00
JSONL_Parse_Large 12850682.166665003 ns/iter 14447127.249998933 ns/iter 0.89
JSONL_Parse_Large_GZIP 14252892.91836755 ns/iter 15833019.704545718 ns/iter 0.90
URITemplateRouter_Create 29775.3311955818 ns/iter 30095.58663069284 ns/iter 0.99
URITemplateRouter_Match 158.6488151800727 ns/iter 160.79774457431716 ns/iter 0.99
URITemplateRouter_Match_BasePath 183.26162443960993 ns/iter 185.5891568754946 ns/iter 0.99
URITemplateRouterView_Restore 10022.377500277331 ns/iter 8441.650858382196 ns/iter 1.19
URITemplateRouterView_Match 126.58165521527769 ns/iter 127.22857499525128 ns/iter 0.99
URITemplateRouterView_Match_BasePath 142.9214215353334 ns/iter 149.79469047527846 ns/iter 0.95
URITemplateRouterView_Arguments 474.44311743818366 ns/iter 475.7233796989324 ns/iter 1.00
JSONPath_Descendant_Filter_Nested 1876.703261457112 ns/iter 1707.205031847673 ns/iter 1.10
Pointer_Object_Traverse 32.57783345146143 ns/iter 32.72621588923203 ns/iter 1.00
Pointer_Object_Try_Traverse 26.067609868340142 ns/iter 25.83347329902335 ns/iter 1.01
Pointer_Push_Back_Pointer_To_Weak_Pointer 164.05943585395445 ns/iter 159.7053466324185 ns/iter 1.03
Pointer_Walker_Schema_ISO_Language 2820009.6219510725 ns/iter 2800966.1666664616 ns/iter 1.01
Pointer_Maybe_Tracked_Deeply_Nested/0 1901837.788043382 ns/iter 1905770.185082841 ns/iter 1.00
Pointer_Maybe_Tracked_Deeply_Nested/1 1643508.443925316 ns/iter 1755269.3799999019 ns/iter 0.94
Pointer_Position_Tracker_Get_Deeply_Nested 561.5921172122936 ns/iter 396.14950756440464 ns/iter 1.42
JSON_Array_Of_Objects_Unique 415.708351642463 ns/iter 428.93593431950086 ns/iter 0.97
JSON_Parse_1 9770.905878128533 ns/iter 10130.102316378843 ns/iter 0.96
JSON_Parse_Real 7736.737928121634 ns/iter 8069.867917115489 ns/iter 0.96
JSON_Parse_Decimal 11140.69300608536 ns/iter 12924.235821887598 ns/iter 0.86
JSON_Parse_Schema_ISO_Language 6826573.745097806 ns/iter 6968493.803921158 ns/iter 0.98
JSON_Parse_Integer 5669.047265889544 ns/iter 5671.937580630259 ns/iter 1.00
JSON_Parse_String_NonSSO_Plain 12186.765313013564 ns/iter 12100.832677098608 ns/iter 1.01
JSON_Parse_String_SSO_Plain 4930.560565933554 ns/iter 5109.327087131162 ns/iter 0.97
JSON_Parse_String_Escape_Heavy 24162.606158215764 ns/iter 26622.826928173614 ns/iter 0.91
JSON_Parse_Object_Short_Keys 14228.532813648595 ns/iter 13702.797076744464 ns/iter 1.04
JSON_Parse_Object_Scalar_Properties 7165.755605611451 ns/iter 7114.489439974591 ns/iter 1.01
JSON_Parse_Object_Array_Properties 12575.625816083013 ns/iter 12486.308434723425 ns/iter 1.01
JSON_Parse_Object_Object_Properties 11964.269039084882 ns/iter 12214.669988963424 ns/iter 0.98
JSON_Parse_Nested_Containers 98668.58903334888 ns/iter 99728.85290323012 ns/iter 0.99
JSON_From_String_Copy 19.703847983707508 ns/iter 18.079091151954604 ns/iter 1.09
JSON_From_String_Temporary 16.365033237143493 ns/iter 15.361080244625523 ns/iter 1.07
JSON_Number_To_Double 19.7078945276898 ns/iter 21.206684420479135 ns/iter 0.93
JSON_Object_At_Last_Key/8 4.198420703783529 ns/iter 3.8145514046953397 ns/iter 1.10
JSON_Object_At_Last_Key/32 13.441840979956822 ns/iter 11.952504676462631 ns/iter 1.12
JSON_Object_At_Last_Key/128 47.33549819334164 ns/iter 48.62668738090931 ns/iter 0.97
JSON_Object_At_Last_Key/512 282.8708366793473 ns/iter 358.5580936175341 ns/iter 0.79
JSON_Fast_Hash_Helm_Chart_Lock 70.85354264005468 ns/iter 61.08123698977942 ns/iter 1.16
JSON_Equality_Helm_Chart_Lock 181.32059266025365 ns/iter 156.77261502533338 ns/iter 1.16
JSON_Divisible_By_Decimal 252.46460492075073 ns/iter 250.83380499652026 ns/iter 1.01
JSON_String_Equal/10 5.717976293485155 ns/iter 5.3788846290943875 ns/iter 1.06
JSON_String_Equal/100 6.423923951378175 ns/iter 5.999605992841386 ns/iter 1.07
JSON_String_Equal_Small_By_Perfect_Hash/10 0.7136218123357853 ns/iter 0.6234409956400023 ns/iter 1.14
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 21.952246301412497 ns/iter 25.2164017534522 ns/iter 0.87
JSON_String_Fast_Hash/10 2.4635984165805347 ns/iter 2.296596789024014 ns/iter 1.07
JSON_String_Fast_Hash/100 2.462762176831316 ns/iter 2.2966675693911855 ns/iter 1.07
JSON_String_Key_Hash/10 1.0831442496371548 ns/iter 1.2469008724165802 ns/iter 0.87
JSON_String_Key_Hash/100 14.761153598793006 ns/iter 12.44774452330298 ns/iter 1.19
JSON_Object_Defines_Miss_Same_Length 3.167268132496772 ns/iter 3.115457076350742 ns/iter 1.02
JSON_Object_Defines_Miss_Too_Small 3.5185636433999616 ns/iter 3.1179080183102967 ns/iter 1.13
JSON_Object_Defines_Miss_Too_Large 3.1672761512651073 ns/iter 3.120122250031247 ns/iter 1.02
Regex_Lower_S_Or_Upper_S_Asterisk 1.0552452117610485 ns/iter 0.9502214904549836 ns/iter 1.11
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 0.7037699117709851 ns/iter 0.6232049129947627 ns/iter 1.13
Regex_Period_Asterisk 1.0768916043663754 ns/iter 0.9342211392348235 ns/iter 1.15
Regex_Group_Period_Asterisk_Group 0.7035487346763571 ns/iter 0.6248833334527873 ns/iter 1.13
Regex_Period_Plus 1.0570368583740408 ns/iter 0.9393734215972944 ns/iter 1.13
Regex_Period 0.7036691461619897 ns/iter 0.6248483017508959 ns/iter 1.13
Regex_Caret_Period_Plus_Dollar 1.056004827643135 ns/iter 0.9355220688496829 ns/iter 1.13
Regex_Caret_Group_Period_Plus_Group_Dollar 0.70686717171776 ns/iter 0.6242295518380374 ns/iter 1.13
Regex_Caret_Period_Asterisk_Dollar 1.0556989696560475 ns/iter 0.9349155648537895 ns/iter 1.13
Regex_Caret_Group_Period_Asterisk_Group_Dollar 0.7041968954497749 ns/iter 0.6240789585285847 ns/iter 1.13
Regex_Caret_X_Hyphen 4.220175310041205 ns/iter 4.369119421395333 ns/iter 0.97
Regex_Period_Md_Dollar 34.648050925114255 ns/iter 42.93935602162258 ns/iter 0.81
Regex_Caret_Slash_Period_Asterisk 4.395691260601045 ns/iter 4.669929298022212 ns/iter 0.94
Regex_Caret_Period_Range_Dollar 1.4074297651674648 ns/iter 1.2480066695237795 ns/iter 1.13
Regex_Nested_Backtrack 42.36519682981118 ns/iter 44.60812452905185 ns/iter 0.95

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

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

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: a75083a Previous: 89051cb Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 1.943409607708138 ns/iter 2.4001104090822216 ns/iter 0.81
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.3405699025849334 ns/iter 2.3077895599888625 ns/iter 1.01
Regex_Period_Asterisk 1.8744020883305106 ns/iter 2.0556716082704973 ns/iter 0.91
Regex_Group_Period_Asterisk_Group 1.9738772388419485 ns/iter 1.9189953041869485 ns/iter 1.03
Regex_Period_Plus 2.4197007463863454 ns/iter 2.3150808714365505 ns/iter 1.05
Regex_Period 2.450312451633215 ns/iter 2.2368377131805155 ns/iter 1.10
Regex_Caret_Period_Plus_Dollar 2.4311019375986254 ns/iter 2.2633040734602043 ns/iter 1.07
Regex_Caret_Group_Period_Plus_Group_Dollar 2.360642120384288 ns/iter 2.658006963007763 ns/iter 0.89
Regex_Caret_Period_Asterisk_Dollar 1.9750481171524243 ns/iter 2.0506392923262413 ns/iter 0.96
Regex_Caret_Group_Period_Asterisk_Group_Dollar 2.22480511449225 ns/iter 1.985058689012027 ns/iter 1.12
Regex_Caret_X_Hyphen 7.937197934005745 ns/iter 6.763391978683537 ns/iter 1.17
Regex_Period_Md_Dollar 23.76547585537614 ns/iter 19.0329529969408 ns/iter 1.25
Regex_Caret_Slash_Period_Asterisk 4.968130039793995 ns/iter 4.833072109075522 ns/iter 1.03
Regex_Caret_Period_Range_Dollar 2.251106846180447 ns/iter 2.3092964786093755 ns/iter 0.97
Regex_Nested_Backtrack 32.40745277382294 ns/iter 27.599001910337343 ns/iter 1.17
JSON_Array_Of_Objects_Unique 431.69774811517414 ns/iter 397.91397071883716 ns/iter 1.08
JSON_Parse_1 9006.066951487226 ns/iter 8668.202505446454 ns/iter 1.04
JSON_Parse_Real 7557.970328076004 ns/iter 8745.105142897984 ns/iter 0.86
JSON_Parse_Decimal 9996.002703961645 ns/iter 8981.309171755314 ns/iter 1.11
JSON_Parse_Schema_ISO_Language 4048159.462963302 ns/iter 4659173.076923468 ns/iter 0.87
JSON_Parse_Integer 5089.387117923599 ns/iter 5494.616845226253 ns/iter 0.93
JSON_Parse_String_NonSSO_Plain 7467.765634642168 ns/iter 8380.729693788793 ns/iter 0.89
JSON_Parse_String_SSO_Plain 3550.516467380486 ns/iter 3901.0065992522077 ns/iter 0.91
JSON_Parse_String_Escape_Heavy 26232.126172266726 ns/iter 27315.308474826783 ns/iter 0.96
JSON_Parse_Object_Short_Keys 10273.4785238561 ns/iter 10989.070567507904 ns/iter 0.93
JSON_Parse_Object_Scalar_Properties 5155.177700865298 ns/iter 5641.705535168305 ns/iter 0.91
JSON_Parse_Object_Array_Properties 7452.824285507214 ns/iter 8373.039509459828 ns/iter 0.89
JSON_Parse_Object_Object_Properties 9646.87315227079 ns/iter 8532.481404601025 ns/iter 1.13
JSON_Parse_Nested_Containers 70277.23261141748 ns/iter 76847.24142699296 ns/iter 0.91
JSON_From_String_Copy 30.69064746548411 ns/iter 27.481888482225415 ns/iter 1.12
JSON_From_String_Temporary 25.82089547834232 ns/iter 21.118607359255435 ns/iter 1.22
JSON_Number_To_Double 41.99571329676986 ns/iter 34.765771529139926 ns/iter 1.21
JSON_Object_At_Last_Key/8 4.576022850236518 ns/iter 4.5997504939807925 ns/iter 0.99
JSON_Object_At_Last_Key/32 12.749885706007968 ns/iter 13.825682354315255 ns/iter 0.92
JSON_Object_At_Last_Key/128 67.39561742154714 ns/iter 67.23463427720904 ns/iter 1.00
JSON_Object_At_Last_Key/512 201.3307703330547 ns/iter 221.5480232083405 ns/iter 0.91
JSON_Fast_Hash_Helm_Chart_Lock 68.42598717430216 ns/iter 69.11710946566413 ns/iter 0.99
JSON_Equality_Helm_Chart_Lock 160.03357989187037 ns/iter 167.09396127726987 ns/iter 0.96
JSON_Divisible_By_Decimal 194.51089103301422 ns/iter 226.2088967811304 ns/iter 0.86
JSON_String_Equal/10 8.039996602807967 ns/iter 7.654667262253439 ns/iter 1.05
JSON_String_Equal/100 7.797206369018432 ns/iter 7.186575830172787 ns/iter 1.08
JSON_String_Equal_Small_By_Perfect_Hash/10 0.44986433507784773 ns/iter 0.35252541960913253 ns/iter 1.28
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 4.415514150891857 ns/iter 3.19047659620261 ns/iter 1.38
JSON_String_Fast_Hash/10 2.81197566004584 ns/iter 2.4481864596881775 ns/iter 1.15
JSON_String_Fast_Hash/100 2.56486022430521 ns/iter 2.047336652520539 ns/iter 1.25
JSON_String_Key_Hash/10 2.0321767455406046 ns/iter 1.7295027112216395 ns/iter 1.18
JSON_String_Key_Hash/100 2.440653240908491 ns/iter 2.362297748433725 ns/iter 1.03
JSON_Object_Defines_Miss_Same_Length 3.052817297469347 ns/iter 2.785488023065398 ns/iter 1.10
JSON_Object_Defines_Miss_Too_Small 3.512953959331621 ns/iter 2.9757236379558734 ns/iter 1.18
JSON_Object_Defines_Miss_Too_Large 4.858315250426165 ns/iter 2.8190466481115974 ns/iter 1.72
Pointer_Object_Traverse 40.30688891049058 ns/iter 25.447529279736866 ns/iter 1.58
Pointer_Object_Try_Traverse 32.279274312121906 ns/iter 22.733624329039873 ns/iter 1.42
Pointer_Push_Back_Pointer_To_Weak_Pointer 284.5907366792614 ns/iter 179.20413429902123 ns/iter 1.59
Pointer_Walker_Schema_ISO_Language 3750636.5602091863 ns/iter 3377177.1327014496 ns/iter 1.11
Pointer_Maybe_Tracked_Deeply_Nested/0 1578068.1921295123 ns/iter 1340882.4669810128 ns/iter 1.18
Pointer_Maybe_Tracked_Deeply_Nested/1 1278753.0756458521 ns/iter 1121446.6123500038 ns/iter 1.14
Pointer_Position_Tracker_Get_Deeply_Nested 421.9947919543496 ns/iter 369.2110692895787 ns/iter 1.14
JSONPath_Descendant_Filter_Nested 1916.3425989967473 ns/iter 1462.6226563441323 ns/iter 1.31
URITemplateRouter_Create 32424.995199572855 ns/iter 24942.415188046256 ns/iter 1.30
URITemplateRouter_Match 224.76889783759555 ns/iter 186.05584404962062 ns/iter 1.21
URITemplateRouter_Match_BasePath 246.01579147754296 ns/iter 203.27528300695522 ns/iter 1.21
URITemplateRouterView_Restore 12488.836682899937 ns/iter 10934.48390710309 ns/iter 1.14
URITemplateRouterView_Match 165.254527317729 ns/iter 136.7400876425822 ns/iter 1.21
URITemplateRouterView_Match_BasePath 190.8256941918058 ns/iter 158.65814593252185 ns/iter 1.20
URITemplateRouterView_Arguments 642.29063514069 ns/iter 561.7353318781911 ns/iter 1.14
JSONL_Parse_Large 12131709.677419167 ns/iter 11287213.114752883 ns/iter 1.07
JSONL_Parse_Large_GZIP 15049674.52830279 ns/iter 11590862.016393032 ns/iter 1.30
JSONLD_Catalog_Annotation_List_Populate 1259975.2118642186 ns/iter 955810.3055916912 ns/iter 1.32
JSONLD_Catalog_Materialize 5826077.910568514 ns/iter 4844444.819819966 ns/iter 1.20
HTML_Build_Table_100000 50934020.85714161 ns/iter 39740361.11111446 ns/iter 1.28
HTML_Render_Table_100000 2355904.530744573 ns/iter 2065841.6654545034 ns/iter 1.14
GZIP_Compress_ISO_Language_Set_3_Locations 30799162.863636617 ns/iter 36539988.636367194 ns/iter 0.84
GZIP_Decompress_ISO_Language_Set_3_Locations 3564205.7409323226 ns/iter 4524416.921686865 ns/iter 0.79
GZIP_Compress_ISO_Language_Set_3_Schema 1708964.4772117655 ns/iter 2066564.4769647266 ns/iter 0.83
GZIP_Decompress_ISO_Language_Set_3_Schema 312854.54392939294 ns/iter 376207.1202156633 ns/iter 0.83
JOSE_VerifySignature_RS256 24365.81036903237 ns/iter 31855.409883281292 ns/iter 0.76
JOSE_VerifySignature_ES512 1314802.8824531415 ns/iter 1473198.483263598 ns/iter 0.89

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

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

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: a75083a Previous: 89051cb Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 2.1871051023344066 ns/iter 2.463693659666673 ns/iter 0.89
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.178651495120862 ns/iter 2.463194243708734 ns/iter 0.88
Regex_Period_Asterisk 2.179016310354802 ns/iter 2.4632150617993096 ns/iter 0.88
Regex_Group_Period_Asterisk_Group 2.1785453319553962 ns/iter 2.461962822845269 ns/iter 0.88
Regex_Period_Plus 2.4899703885869466 ns/iter 3.519975466416855 ns/iter 0.71
Regex_Period 2.8019635525574 ns/iter 3.8689185011497322 ns/iter 0.72
Regex_Caret_Period_Plus_Dollar 2.8018688833433876 ns/iter 3.868680049299468 ns/iter 0.72
Regex_Caret_Group_Period_Plus_Group_Dollar 2.4896051622191693 ns/iter 3.5172770268768847 ns/iter 0.71
Regex_Caret_Period_Asterisk_Dollar 3.1153071668258496 ns/iter 2.4675568456666492 ns/iter 1.26
Regex_Caret_Group_Period_Asterisk_Group_Dollar 3.423461079883717 ns/iter 2.8165689935117535 ns/iter 1.22
Regex_Caret_X_Hyphen 6.892081117029026 ns/iter 7.477250543729897 ns/iter 0.92
Regex_Period_Md_Dollar 27.46494476582657 ns/iter 26.773178776504444 ns/iter 1.03
Regex_Caret_Slash_Period_Asterisk 6.845951036925841 ns/iter 7.255166166032632 ns/iter 0.94
Regex_Caret_Period_Range_Dollar 4.357224981247176 ns/iter 4.5720083450500715 ns/iter 0.95
Regex_Nested_Backtrack 38.75250220429871 ns/iter 38.86461295105222 ns/iter 1.00
JSON_Array_Of_Objects_Unique 409.91284040383687 ns/iter 439.13772232494523 ns/iter 0.93
JSON_Parse_1 4827.522687217227 ns/iter 4688.11461844734 ns/iter 1.03
JSON_Parse_Real 5317.359317280426 ns/iter 5183.797128739935 ns/iter 1.03
JSON_Parse_Decimal 7646.43278781872 ns/iter 7675.232432197194 ns/iter 1.00
JSON_Parse_Schema_ISO_Language 3483518.179104433 ns/iter 3539122.490000182 ns/iter 0.98
JSON_Parse_Integer 3865.2235634774397 ns/iter 3907.4363970383342 ns/iter 0.99
JSON_Parse_String_NonSSO_Plain 5021.151919999056 ns/iter 5066.407412996772 ns/iter 0.99
JSON_Parse_String_SSO_Plain 2766.798137627477 ns/iter 2853.6204116567988 ns/iter 0.97
JSON_Parse_String_Escape_Heavy 14370.630234456097 ns/iter 14402.819215089241 ns/iter 1.00
JSON_Parse_Object_Short_Keys 10519.721726683618 ns/iter 7832.343182047451 ns/iter 1.34
JSON_Parse_Object_Scalar_Properties 4115.777408950475 ns/iter 3976.52529125414 ns/iter 1.04
JSON_Parse_Object_Array_Properties 5709.3255547052795 ns/iter 5540.351338099136 ns/iter 1.03
JSON_Parse_Object_Object_Properties 5511.726272989685 ns/iter 5484.774920467926 ns/iter 1.00
JSON_Parse_Nested_Containers 44951.58102817836 ns/iter 44473.462504778094 ns/iter 1.01
JSON_From_String_Copy 19.6342289208213 ns/iter 20.819739988816906 ns/iter 0.94
JSON_From_String_Temporary 17.145124059300922 ns/iter 17.953065592482076 ns/iter 0.95
JSON_Number_To_Double 23.73479958275061 ns/iter 22.506697741731497 ns/iter 1.05
JSON_Object_At_Last_Key/8 3.8279218271138595 ns/iter 4.017816410537441 ns/iter 0.95
JSON_Object_At_Last_Key/32 12.42690805741211 ns/iter 13.05994078438 ns/iter 0.95
JSON_Object_At_Last_Key/128 49.39812098948953 ns/iter 46.894786436622795 ns/iter 1.05
JSON_Object_At_Last_Key/512 391.0412875478822 ns/iter 370.9354268865967 ns/iter 1.05
JSON_Fast_Hash_Helm_Chart_Lock 60.70481848318933 ns/iter 73.15982193816198 ns/iter 0.83
JSON_Equality_Helm_Chart_Lock 152.93664589977422 ns/iter 158.37957547955727 ns/iter 0.97
JSON_Divisible_By_Decimal 254.84406447132267 ns/iter 256.6658896766546 ns/iter 0.99
JSON_String_Equal/10 5.921069299194158 ns/iter 5.646029508136708 ns/iter 1.05
JSON_String_Equal/100 6.5499260553639544 ns/iter 6.3339419073527425 ns/iter 1.03
JSON_String_Equal_Small_By_Perfect_Hash/10 0.9394757711807208 ns/iter 1.0553700538439228 ns/iter 0.89
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 14.934388645688866 ns/iter 12.408289003110692 ns/iter 1.20
JSON_String_Fast_Hash/10 2.79995671965071 ns/iter 2.816030351093272 ns/iter 0.99
JSON_String_Fast_Hash/100 2.7998219992396476 ns/iter 2.8287516709969687 ns/iter 0.99
JSON_String_Key_Hash/10 2.7363172901541084 ns/iter 2.463099164151879 ns/iter 1.11
JSON_String_Key_Hash/100 9.027238244835843 ns/iter 7.733763421479965 ns/iter 1.17
JSON_Object_Defines_Miss_Same_Length 2.956915321212763 ns/iter 3.2065933320923263 ns/iter 0.92
JSON_Object_Defines_Miss_Too_Small 3.4335718498162526 ns/iter 4.220855194122876 ns/iter 0.81
JSON_Object_Defines_Miss_Too_Large 2.660674664681091 ns/iter 2.9809931791383795 ns/iter 0.89
Pointer_Object_Traverse 29.09458323382653 ns/iter 30.685362472425748 ns/iter 0.95
Pointer_Object_Try_Traverse 31.078574245594496 ns/iter 33.2830926140858 ns/iter 0.93
Pointer_Push_Back_Pointer_To_Weak_Pointer 215.5326876580349 ns/iter 190.218471879448 ns/iter 1.13
Pointer_Walker_Schema_ISO_Language 2671038.797709588 ns/iter 2800990.7280002157 ns/iter 0.95
Pointer_Maybe_Tracked_Deeply_Nested/0 1251255.0494505328 ns/iter 1250851.5910714178 ns/iter 1.00
Pointer_Maybe_Tracked_Deeply_Nested/1 1619442.4208143528 ns/iter 1567324.2366069928 ns/iter 1.03
Pointer_Position_Tracker_Get_Deeply_Nested 678.408259569542 ns/iter 743.434279773356 ns/iter 0.91
JSONPath_Descendant_Filter_Nested 1589.2899698853812 ns/iter 1662.047101449193 ns/iter 0.96
URITemplateRouter_Create 31918.075489789993 ns/iter 30116.784637199096 ns/iter 1.06
URITemplateRouter_Match 174.7539404627972 ns/iter 179.4293375422822 ns/iter 0.97
URITemplateRouter_Match_BasePath 199.45395332086312 ns/iter 219.88697763237138 ns/iter 0.91
URITemplateRouterView_Restore 8336.17986186499 ns/iter 9925.584684094385 ns/iter 0.84
URITemplateRouterView_Match 142.9556479666959 ns/iter 144.05551034159137 ns/iter 0.99
URITemplateRouterView_Match_BasePath 164.6617899503279 ns/iter 164.33378911996428 ns/iter 1.00
URITemplateRouterView_Arguments 452.30275350938933 ns/iter 458.5653338366683 ns/iter 0.99
JSONL_Parse_Large 9616774.712330194 ns/iter 9006165.249999005 ns/iter 1.07
JSONL_Parse_Large_GZIP 11169856.777778406 ns/iter 10675353.661538513 ns/iter 1.05
JSONLD_Catalog_Annotation_List_Populate 1242379.808170519 ns/iter 1271034.8479854458 ns/iter 0.98
JSONLD_Catalog_Materialize 4183192.652694307 ns/iter 4408790.415094608 ns/iter 0.95
HTML_Build_Table_100000 69129694.49999765 ns/iter 70116576.6000031 ns/iter 0.99
HTML_Render_Table_100000 5568197.528000383 ns/iter 5159835.649253841 ns/iter 1.08
GZIP_Compress_ISO_Language_Set_3_Locations 33561991.71428541 ns/iter 36734798.631575935 ns/iter 0.91
GZIP_Decompress_ISO_Language_Set_3_Locations 4229879.45180754 ns/iter 4280550.71951232 ns/iter 0.99
GZIP_Compress_ISO_Language_Set_3_Schema 1896650.048648688 ns/iter 2133387.0243902924 ns/iter 0.89
GZIP_Decompress_ISO_Language_Set_3_Schema 350717.7393484105 ns/iter 276689.2754940819 ns/iter 1.27
JOSE_VerifySignature_RS256 56827.068266577604 ns/iter 63711.33163450674 ns/iter 0.89
JOSE_VerifySignature_ES512 2421932.4325258643 ns/iter 2701810.038609659 ns/iter 0.90

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

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

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: a75083a Previous: d014705 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 5.349163000000772 ns/iter 5.3319669642876635 ns/iter 1.00
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 5.0271010000005845 ns/iter 5.017398214282106 ns/iter 1.00
Regex_Period_Asterisk 5.09711599999946 ns/iter 5.020159999999123 ns/iter 1.02
Regex_Group_Period_Asterisk_Group 5.036416999998892 ns/iter 5.013158000001567 ns/iter 1.00
Regex_Period_Plus 5.088640859572828 ns/iter 5.057123999999931 ns/iter 1.01
Regex_Period 5.334011607142689 ns/iter 5.477169642858826 ns/iter 0.97
Regex_Caret_Period_Plus_Dollar 5.023472000000311 ns/iter 5.345972999998594 ns/iter 0.94
Regex_Caret_Group_Period_Plus_Group_Dollar 5.4105809999987295 ns/iter 5.453055000002678 ns/iter 0.99
Regex_Caret_Period_Asterisk_Dollar 5.4039116071424225 ns/iter 5.587052000000767 ns/iter 0.97
Regex_Caret_Group_Period_Asterisk_Group_Dollar 5.075928000001113 ns/iter 5.083863000004385 ns/iter 1.00
Regex_Caret_X_Hyphen 8.50319192632356 ns/iter 8.722376116071676 ns/iter 0.97
Regex_Period_Md_Dollar 49.34919598795 ns/iter 45.51487816505875 ns/iter 1.08
Regex_Caret_Slash_Period_Asterisk 8.759064732143226 ns/iter 8.045081473215175 ns/iter 1.09
Regex_Caret_Period_Range_Dollar 6.017051999999693 ns/iter 6.2190107142855915 ns/iter 0.97
Regex_Nested_Backtrack 56.32016741071563 ns/iter 57.55707000002985 ns/iter 0.98
JSON_Array_Of_Objects_Unique 601.8251000000419 ns/iter 641.2621000004037 ns/iter 0.94
JSON_Parse_1 9035.800223214454 ns/iter 10170.285937498136 ns/iter 0.89
JSON_Parse_Real 16659.50892857434 ns/iter 16720.234375000586 ns/iter 1.00
JSON_Parse_Decimal 12027.564062499607 ns/iter 12401.476785709878 ns/iter 0.97
JSON_Parse_Schema_ISO_Language 7397078.888887638 ns/iter 8131309.999998848 ns/iter 0.91
JSON_Parse_Integer 6174.004464286652 ns/iter 6325.286607140664 ns/iter 0.98
JSON_Parse_String_NonSSO_Plain 7905.943080357097 ns/iter 7975.876116072454 ns/iter 0.99
JSON_Parse_String_SSO_Plain 3818.5474668794072 ns/iter 3787.704843384554 ns/iter 1.01
JSON_Parse_String_Escape_Heavy 21811.450000001285 ns/iter 21657.32187499714 ns/iter 1.01
JSON_Parse_Object_Short_Keys 13351.94865201249 ns/iter 13319.548796659763 ns/iter 1.00
JSON_Parse_Object_Scalar_Properties 6842.476562499859 ns/iter 6832.596428572352 ns/iter 1.00
JSON_Parse_Object_Array_Properties 11495.332812501147 ns/iter 11509.289285714072 ns/iter 1.00
JSON_Parse_Object_Object_Properties 11619.958928572974 ns/iter 11949.512499995762 ns/iter 0.97
JSON_Parse_Nested_Containers 80413.18080359412 ns/iter 79741.28348214395 ns/iter 1.01
JSON_From_String_Copy 64.18541964285802 ns/iter 64.17869000001701 ns/iter 1.00
JSON_From_String_Temporary 58.08643749998866 ns/iter 59.962687499981776 ns/iter 0.97
JSON_Number_To_Double 122.74093750001215 ns/iter 124.60906249998516 ns/iter 0.99
JSON_Object_At_Last_Key/8 7.264970982145006 ns/iter 7.4459821428588056 ns/iter 0.98
JSON_Object_At_Last_Key/32 23.94077500000386 ns/iter 23.701475000009964 ns/iter 1.01
JSON_Object_At_Last_Key/128 89.80537500001162 ns/iter 106.09765999997762 ns/iter 0.85
JSON_Object_At_Last_Key/512 425.9365625000555 ns/iter 453.96880668937484 ns/iter 0.94
JSON_Fast_Hash_Helm_Chart_Lock 101.96314062500988 ns/iter 103.33651562504544 ns/iter 0.99
JSON_Equality_Helm_Chart_Lock 231.7535567239019 ns/iter 236.7086562500731 ns/iter 0.98
JSON_Divisible_By_Decimal 297.5191007233277 ns/iter 340.2763392857975 ns/iter 0.87
JSON_String_Equal/10 10.635303124999496 ns/iter 12.087867857149247 ns/iter 0.88
JSON_String_Equal/100 11.688673214284304 ns/iter 13.698321428575712 ns/iter 0.85
JSON_String_Equal_Small_By_Perfect_Hash/10 2.5114358013292133 ns/iter 3.005697857143527 ns/iter 0.84
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 15.137339285717287 ns/iter 16.38735491071535 ns/iter 0.92
JSON_String_Fast_Hash/10 6.6113249999984545 ns/iter 7.778525669641974 ns/iter 0.85
JSON_String_Fast_Hash/100 6.606478571429518 ns/iter 7.667581250002188 ns/iter 0.86
JSON_String_Key_Hash/10 5.356366964286556 ns/iter 6.511252678572125 ns/iter 0.82
JSON_String_Key_Hash/100 11.904799999999938 ns/iter 14.028394642853723 ns/iter 0.85
JSON_Object_Defines_Miss_Same_Length 3.767983386128692 ns/iter 4.689094787594456 ns/iter 0.80
JSON_Object_Defines_Miss_Too_Small 4.102757641255749 ns/iter 4.8449253211540695 ns/iter 0.85
JSON_Object_Defines_Miss_Too_Large 3.779953683035028 ns/iter 4.669171316962206 ns/iter 0.81
Pointer_Object_Traverse 68.12360714284134 ns/iter 82.90425223214422 ns/iter 0.82
Pointer_Object_Try_Traverse 72.49774999999252 ns/iter 86.85106249998853 ns/iter 0.83
Pointer_Push_Back_Pointer_To_Weak_Pointer 184.99954330353106 ns/iter 219.97542142644903 ns/iter 0.84
Pointer_Walker_Schema_ISO_Language 10827148.437499546 ns/iter 14103196.874998502 ns/iter 0.77
Pointer_Maybe_Tracked_Deeply_Nested/0 2412925.000000273 ns/iter 2871258.0508473534 ns/iter 0.84
Pointer_Maybe_Tracked_Deeply_Nested/1 3802768.983957277 ns/iter 4179522.6744175865 ns/iter 0.91
Pointer_Position_Tracker_Get_Deeply_Nested 518.303143570924 ns/iter 630.4719797045024 ns/iter 0.82
JSONPath_Descendant_Filter_Nested 2411.674205720888 ns/iter 2971.477901862693 ns/iter 0.81
URITemplateRouter_Create 40784.92187499703 ns/iter 48746.45393887448 ns/iter 0.84
URITemplateRouter_Match 234.30375733217844 ns/iter 306.48850374023505 ns/iter 0.76
URITemplateRouter_Match_BasePath 265.3234836908981 ns/iter 314.9817952029368 ns/iter 0.84
URITemplateRouterView_Restore 34561.54488312072 ns/iter 36410.82123533051 ns/iter 0.95
URITemplateRouterView_Match 181.47363227444808 ns/iter 221.3800237531158 ns/iter 0.82
URITemplateRouterView_Match_BasePath 205.41696627604443 ns/iter 249.78236608118098 ns/iter 0.82
URITemplateRouterView_Arguments 530.9929464285038 ns/iter 652.8994999998757 ns/iter 0.81
JSONL_Parse_Large 32648604.761908203 ns/iter 39838170.000007264 ns/iter 0.82
JSONL_Parse_Large_GZIP 33315174.99999563 ns/iter 40923009.523794465 ns/iter 0.81
JSONLD_Catalog_Annotation_List_Populate 2698420.454545626 ns/iter 3290311.01694963 ns/iter 0.82
JSONLD_Catalog_Materialize 9582262.666666187 ns/iter 10658493.333333658 ns/iter 0.90
HTML_Build_Table_100000 90732257.1428527 ns/iter 105283033.33338349 ns/iter 0.86
HTML_Render_Table_100000 7767647.7777787205 ns/iter 12782665.333331048 ns/iter 0.61
GZIP_Compress_ISO_Language_Set_3_Locations 36793657.89473291 ns/iter 45289439.99998774 ns/iter 0.81
GZIP_Decompress_ISO_Language_Set_3_Locations 9972758.66666617 ns/iter 14664725.33333217 ns/iter 0.68
GZIP_Compress_ISO_Language_Set_3_Schema 2137149.0624993327 ns/iter 2593802.0289857746 ns/iter 0.82
GZIP_Decompress_ISO_Language_Set_3_Schema 631326.8999999764 ns/iter 867173.7723214992 ns/iter 0.73
JOSE_VerifySignature_RS256 21294.669491036264 ns/iter 24821.256250007194 ns/iter 0.86
JOSE_VerifySignature_ES512 1549888.8392855295 ns/iter 1627944.7174441777 ns/iter 0.95

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.

1 participant