Repository navigation
Conversation
Signed-off-by: Juan Cruz Viotti <[email protected]>
Signed-off-by: Juan Cruz Viotti <[email protected]>
🤖 Augment PR SummarySummary: Adds lightweight APIs for reading what an OpenAPI Description declares without framing it.
🤖 Was this summary useful? React with 👍 or 👎 |
| return base; | ||
| } | ||
|
|
||
| auto established{openapi_document_base(self->to_string(), base)}; |
There was a problem hiding this comment.
Could you check openapi_base's error-attribution contract at src/core/openapi/frame.cc:522 for a 3.2 document with a valid $self and an unknown root member such as "typo": true? openapi_check_document rejects unknown fields before applying $self (src/core/openapi/document.h:362–364), so its OpenAPIError::base() is the retrieval URI while this returns $self, causing the documented comparison to misclassify an entry-document error as external.
Severity: medium
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
Signed-off-by: Juan Cruz Viotti <[email protected]>
There was a problem hiding this comment.
All reported issues were addressed
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
There was a problem hiding this comment.
All reported issues were addressed
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
Benchmark
|
| Benchmark | main |
This branch | Change |
|---|---|---|---|
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 |
10.58 ns | 14.94 ns | +41.2% |
JSON_String_Key_Hash_100 |
6.54 ns | 9.02 ns | +38.1% |
JSON_String_Key_Hash_10 |
2.18 ns | 2.60 ns | +19.1% |
JSON_Number_To_Double |
12.79 ns | 14.96 ns | +17.0% |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
146.56 ns | 167.98 ns | +14.6% |
JSON_Divisible_By_Decimal |
450.27 ns | 479.76 ns | +6.6% |
Schema_Frame_Many_Resources_References |
143.19 ms | 135.95 ms | -5.1% |
URITemplateRouterView_Match |
146.64 ns | 138.82 ns | -5.3% |
JSON_String_Equal_10 |
6.85 ns | 6.23 ns | -9.0% |
Schema_Frame_KrakenD_References |
17.79 ms | 15.48 ms | -13.0% |
JSON_Array_Of_Strings_Unique_Colliding_256 |
256.99 us | 215.90 us | -16.0% |
Pointer_Walker_Schema_ISO_Language |
2.15 ms | 1.69 ms | -21.4% |
All 110 benchmarks
| Benchmark | main |
This branch | Change |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.80 ns | 2.80 ns | -0.1% |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.80 ns | 2.80 ns | +0.1% |
Regex_Period_Asterisk |
2.49 ns | 2.49 ns | +0.1% |
Regex_Group_Period_Asterisk_Group |
2.49 ns | 2.49 ns | +0.0% |
Regex_Period_Plus |
3.42 ns | 3.42 ns | +0.0% |
Regex_Period |
3.42 ns | 3.42 ns | +0.0% |
Regex_Caret_Period_Plus_Dollar |
3.11 ns | 3.11 ns | +0.0% |
Regex_Caret_Group_Period_Plus_Group_Dollar |
3.11 ns | 3.11 ns | +0.0% |
Regex_Caret_Period_Asterisk_Dollar |
4.05 ns | 4.04 ns | -0.0% |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
4.05 ns | 4.04 ns | -0.0% |
Regex_Caret_X_Hyphen |
7.19 ns | 7.17 ns | -0.3% |
Regex_Period_Md_Dollar |
27.20 ns | 27.17 ns | -0.1% |
Regex_Caret_Slash_Period_Asterisk |
7.82 ns | 7.78 ns | -0.6% |
Regex_Caret_Period_Range_Dollar |
4.70 ns | 4.67 ns | -0.6% |
Regex_Nested_Backtrack |
38.53 ns | 38.89 ns | +0.9% |
JSON_Array_Of_Objects_Unique |
427.81 ns | 417.75 ns | -2.4% |
JSON_Array_Of_Integers_Unique_256 |
4.98 us | 5.11 us | +2.7% |
JSON_Array_Of_Strings_Unique_Colliding_256 |
256.99 us | 215.90 us | -16.0% |
JSON_Parse_1 |
4.53 us | 4.45 us | -1.8% |
JSON_Parse_Real |
4.61 us | 4.69 us | +1.7% |
JSON_Parse_Decimal |
7.34 us | 7.48 us | +1.9% |
JSON_Parse_Schema_ISO_Language |
3.31 ms | 3.29 ms | -0.7% |
JSON_Parse_Integer |
3.74 us | 3.69 us | -1.4% |
JSON_Parse_String_NonSSO_Plain |
3.09 us | 3.01 us | -2.4% |
JSON_Parse_String_SSO_Plain |
2.70 us | 2.66 us | -1.7% |
JSON_Parse_String_Escape_Heavy |
12.18 us | 12.15 us | -0.2% |
JSON_Parse_Object_Short_Keys |
7.68 us | 7.89 us | +2.7% |
JSON_Parse_Object_Scalar_Properties |
3.92 us | 4.02 us | +2.7% |
JSON_Parse_Object_Array_Properties |
5.32 us | 5.38 us | +1.1% |
JSON_Parse_Object_Object_Properties |
5.30 us | 5.27 us | -0.6% |
JSON_Parse_Nested_Containers |
34.95 us | 34.96 us | +0.0% |
JSON_Fast_Hash_Helm_Chart_Lock |
66.02 ns | 65.95 ns | -0.1% |
JSON_Equality_Helm_Chart_Lock |
156.45 ns | 157.95 ns | +1.0% |
JSON_String_Equal_10 |
6.85 ns | 6.23 ns | -9.0% |
JSON_String_Equal_100 |
7.18 ns | 6.85 ns | -4.5% |
JSON_String_Equal_Small_By_Perfect_Hash_10 |
0.93 ns | 0.93 ns | +0.0% |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 |
10.58 ns | 14.94 ns | +41.2% |
JSON_String_Fast_Hash_10 |
2.80 ns | 2.80 ns | +0.0% |
JSON_String_Fast_Hash_100 |
2.80 ns | 2.80 ns | -0.0% |
JSON_String_Key_Hash_10 |
2.18 ns | 2.60 ns | +19.1% |
JSON_String_Key_Hash_100 |
6.54 ns | 9.02 ns | +38.1% |
JSON_Object_Defines_Miss_Same_Length |
3.42 ns | 3.42 ns | +0.0% |
JSON_Object_Defines_Miss_Too_Small |
3.00 ns | 3.01 ns | +0.3% |
JSON_Object_Defines_Miss_Too_Large |
2.67 ns | 2.77 ns | +3.7% |
JSON_From_String_Copy |
11.02 ns | 11.04 ns | +0.2% |
JSON_From_String_Temporary |
10.14 ns | 10.18 ns | +0.4% |
JSON_Number_To_Double |
12.79 ns | 14.96 ns | +17.0% |
JSON_Object_At_Last_Key_8 |
3.81 ns | 3.82 ns | +0.4% |
JSON_Object_At_Last_Key_32 |
12.29 ns | 12.31 ns | +0.2% |
JSON_Object_At_Last_Key_128 |
87.44 ns | 87.68 ns | +0.3% |
JSON_Object_At_Last_Key_512 |
390.56 ns | 390.72 ns | +0.0% |
JSON_Divisible_By_Decimal |
450.27 ns | 479.76 ns | +6.6% |
JSON_PropertySet_Contains |
53.91 ns | 53.76 ns | -0.3% |
JSON_PropertySet_Filter_Object_Properties |
39.78 ns | 39.20 ns | -1.4% |
JSON_PropertySet_Insert |
578.02 ns | 581.31 ns | +0.6% |
JSON_Stringify_Schema_Web_Of_Things |
64.18 us | 64.11 us | -0.1% |
JSON_Prettify_Schema_Web_Of_Things |
179.34 us | 182.50 us | +1.8% |
Pointer_Object_Traverse |
28.48 ns | 28.38 ns | -0.4% |
Pointer_Object_Try_Traverse |
33.59 ns | 33.63 ns | +0.1% |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
146.56 ns | 167.98 ns | +14.6% |
Pointer_Walker_Schema_ISO_Language |
2.15 ms | 1.69 ms | -21.4% |
Pointer_Untracked_Deeply_Nested |
1.23 ms | 1.23 ms | +0.4% |
Pointer_Tracked_Deeply_Nested |
1.59 ms | 1.61 ms | +1.3% |
Pointer_Position_Tracker_Get_Deeply_Nested |
615.48 ns | 614.67 ns | -0.1% |
Schema_Tracker_ISO_Language |
4.42 ms | 4.63 ms | +4.8% |
Schema_Tracker_ISO_Language_To_JSON |
16.69 ms | 16.68 ms | -0.1% |
Schema_Frame_WoT_References |
2.03 ms | 2.04 ms | +0.7% |
Schema_Frame_OMC_References |
9.76 ms | 9.32 ms | -4.6% |
Schema_Frame_OMC_Pointers |
18.33 ms | 17.45 ms | -4.8% |
Schema_Frame_OMC_Locations |
8.38 ms | 8.17 ms | -2.5% |
Schema_Frame_ISO_Language_Locations |
42.87 ms | 41.17 ms | -4.0% |
Schema_Frame_ISO_Language_Root |
295.80 ns | 286.89 ns | -3.0% |
Schema_Frame_KrakenD_References |
17.79 ms | 15.48 ms | -13.0% |
Schema_Frame_KrakenD_Reachable |
159.05 ms | 155.30 ms | -2.4% |
Schema_Frame_ISO_Language_Locations_To_JSON |
33.22 ms | 32.46 ms | -2.3% |
Schema_Frame_Many_Resources_References |
143.19 ms | 135.95 ms | -5.1% |
Schema_Frame_Deeply_Nested_References |
11.76 ms | 11.45 ms | -2.6% |
Schema_Format_ISO_Language |
48.77 ms | 47.39 ms | -2.8% |
Schema_Bundle_Meta_2020_12 |
562.07 us | 570.62 us | +1.5% |
Schema_Bundle_Many_Remotes_With_Fragments |
6.61 ms | 6.56 ms | -0.9% |
OpenAPI_Format_Synthetic_3_1 |
51.84 ms | 51.18 ms | -1.3% |
JSONPath_Descendant_Filter_Nested |
1.55 us | 1.54 us | -0.6% |
URITemplateRouter_Create |
23.69 us | 23.54 us | -0.6% |
URITemplateRouter_Match |
177.97 ns | 171.71 ns | -3.5% |
URITemplateRouterView_Restore |
8.59 us | 8.53 us | -0.7% |
URITemplateRouterView_Match |
146.64 ns | 138.82 ns | -5.3% |
URITemplateRouterView_Arguments |
437.82 ns | 440.32 ns | +0.6% |
URITemplateRouter_Match_BasePath |
199.09 ns | 193.60 ns | -2.8% |
URITemplateRouterView_Match_BasePath |
165.20 ns | 157.00 ns | -5.0% |
JSONL_Parse_Large |
9.18 ms | 9.07 ms | -1.2% |
JSONL_Parse_Large_GZIP |
9.35 ms | 9.21 ms | -1.5% |
JSONLD_Catalog_Annotation_List_Populate |
604.93 us | 602.83 us | -0.3% |
JSONLD_Catalog_Materialize |
4.04 ms | 4.18 ms | +3.3% |
HTML_Build_Table_100000 |
38.54 ms | 38.41 ms | -0.3% |
HTML_Render_Table_100000 |
2.09 ms | 2.12 ms | +1.5% |
Markdown_To_HTML_Realistic_Document |
4.27 ms | 4.20 ms | -1.6% |
Markdown_To_HTML_Pathological |
13.16 ms | 13.36 ms | +1.6% |
Markdown_To_HTML_Short_Descriptions |
574.42 ns | 562.48 ns | -2.1% |
GZIP_Compress_ISO_Language_Set_3_Locations |
37.59 ms | 37.61 ms | +0.0% |
GZIP_Decompress_ISO_Language_Set_3_Locations |
5.20 ms | 5.14 ms | -1.1% |
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations |
7.11 ms | 7.10 ms | -0.2% |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
10.13 ms | 9.97 ms | -1.6% |
GZIP_Compress_ISO_Language_Set_3_Schema |
2.22 ms | 2.23 ms | +0.6% |
GZIP_Decompress_ISO_Language_Set_3_Schema |
427.80 us | 425.40 us | -0.6% |
JOSE_VerifySignature_RS256 |
46.89 us | 48.54 us | +3.5% |
JOSE_VerifySignature_ES512 |
1.72 ms | 1.76 ms | +2.4% |
Crypto_CRC32_Large_JSONL |
101.58 us | 101.66 us | +0.1% |
Crypto_AES_GCM_Encrypt_128_1KB |
31.30 us | 31.32 us | +0.1% |
Crypto_AES_GCM_Decrypt_128_1KB |
31.25 us | 31.30 us | +0.2% |
Crypto_AES_GCM_Encrypt_256_1KB |
38.06 us | 38.08 us | +0.0% |
Benchmark
|
| Benchmark | main |
This branch | Change |
|---|---|---|---|
Pointer_Push_Back_Pointer_To_Weak_Pointer |
163.75 ns | 192.72 ns | +17.7% |
Schema_Frame_ISO_Language_Root |
2.32 us | 2.20 us | -5.2% |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 |
15.04 ns | 14.21 ns | -5.6% |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
15.66 ms | 14.65 ms | -6.4% |
Pointer_Position_Tracker_Get_Deeply_Nested |
597.32 ns | 540.61 ns | -9.5% |
All 110 benchmarks
| Benchmark | main |
This branch | Change |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
4.72 ns | 4.72 ns | +0.1% |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
4.76 ns | 4.71 ns | -1.0% |
Regex_Period_Asterisk |
4.94 ns | 4.71 ns | -4.6% |
Regex_Group_Period_Asterisk_Group |
4.80 ns | 4.71 ns | -2.0% |
Regex_Period_Plus |
4.64 ns | 4.60 ns | -0.8% |
Regex_Period |
4.46 ns | 4.45 ns | -0.2% |
Regex_Caret_Period_Plus_Dollar |
4.69 ns | 4.60 ns | -1.9% |
Regex_Caret_Group_Period_Plus_Group_Dollar |
4.46 ns | 4.44 ns | -0.4% |
Regex_Caret_Period_Asterisk_Dollar |
4.70 ns | 4.70 ns | -0.1% |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
4.71 ns | 4.71 ns | -0.1% |
Regex_Caret_X_Hyphen |
7.87 ns | 7.83 ns | -0.4% |
Regex_Period_Md_Dollar |
46.81 ns | 46.86 ns | +0.1% |
Regex_Caret_Slash_Period_Asterisk |
7.54 ns | 7.54 ns | -0.0% |
Regex_Caret_Period_Range_Dollar |
5.33 ns | 5.33 ns | +0.1% |
Regex_Nested_Backtrack |
58.13 ns | 57.92 ns | -0.3% |
JSON_Array_Of_Objects_Unique |
538.22 ns | 544.71 ns | +1.2% |
JSON_Array_Of_Integers_Unique_256 |
4.43 us | 4.45 us | +0.4% |
JSON_Array_Of_Strings_Unique_Colliding_256 |
300.48 us | 300.00 us | -0.2% |
JSON_Parse_1 |
8.46 us | 8.45 us | -0.1% |
JSON_Parse_Real |
8.94 us | 8.89 us | -0.5% |
JSON_Parse_Decimal |
11.90 us | 12.09 us | +1.6% |
JSON_Parse_Schema_ISO_Language |
7.57 ms | 7.56 ms | -0.1% |
JSON_Parse_Integer |
6.41 us | 6.42 us | +0.1% |
JSON_Parse_String_NonSSO_Plain |
7.80 us | 7.85 us | +0.6% |
JSON_Parse_String_SSO_Plain |
3.77 us | 3.73 us | -1.0% |
JSON_Parse_String_Escape_Heavy |
21.89 us | 21.92 us | +0.2% |
JSON_Parse_Object_Short_Keys |
13.35 us | 13.35 us | +0.0% |
JSON_Parse_Object_Scalar_Properties |
6.87 us | 6.84 us | -0.4% |
JSON_Parse_Object_Array_Properties |
11.40 us | 11.48 us | +0.7% |
JSON_Parse_Object_Object_Properties |
11.52 us | 11.70 us | +1.6% |
JSON_Parse_Nested_Containers |
82.04 us | 81.52 us | -0.6% |
JSON_Fast_Hash_Helm_Chart_Lock |
109.64 ns | 104.54 ns | -4.7% |
JSON_Equality_Helm_Chart_Lock |
215.89 ns | 217.96 ns | +1.0% |
JSON_String_Equal_10 |
10.44 ns | 10.64 ns | +1.9% |
JSON_String_Equal_100 |
11.68 ns | 11.81 ns | +1.1% |
JSON_String_Equal_Small_By_Perfect_Hash_10 |
2.19 ns | 2.19 ns | +0.0% |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 |
15.04 ns | 14.21 ns | -5.6% |
JSON_String_Fast_Hash_10 |
6.37 ns | 6.33 ns | -0.7% |
JSON_String_Fast_Hash_100 |
6.37 ns | 6.58 ns | +3.3% |
JSON_String_Key_Hash_10 |
5.02 ns | 5.02 ns | -0.0% |
JSON_String_Key_Hash_100 |
11.87 ns | 11.87 ns | -0.1% |
JSON_Object_Defines_Miss_Same_Length |
3.46 ns | 3.45 ns | -0.4% |
JSON_Object_Defines_Miss_Too_Small |
4.09 ns | 4.09 ns | -0.0% |
JSON_Object_Defines_Miss_Too_Large |
4.09 ns | 4.08 ns | -0.1% |
JSON_From_String_Copy |
63.89 ns | 63.91 ns | +0.0% |
JSON_From_String_Temporary |
57.73 ns | 59.39 ns | +2.9% |
JSON_Number_To_Double |
40.81 ns | 40.72 ns | -0.2% |
JSON_Object_At_Last_Key_8 |
7.23 ns | 7.23 ns | +0.1% |
JSON_Object_At_Last_Key_32 |
22.61 ns | 22.87 ns | +1.2% |
JSON_Object_At_Last_Key_128 |
88.77 ns | 89.07 ns | +0.3% |
JSON_Object_At_Last_Key_512 |
424.97 ns | 423.59 ns | -0.3% |
JSON_Divisible_By_Decimal |
584.69 ns | 586.18 ns | +0.3% |
JSON_PropertySet_Contains |
77.76 ns | 77.87 ns | +0.1% |
JSON_PropertySet_Filter_Object_Properties |
48.39 ns | 48.85 ns | +0.9% |
JSON_PropertySet_Insert |
1.63 us | 1.58 us | -3.0% |
JSON_Stringify_Schema_Web_Of_Things |
228.84 us | 228.64 us | -0.1% |
JSON_Prettify_Schema_Web_Of_Things |
718.41 us | 719.74 us | +0.2% |
Pointer_Object_Traverse |
66.46 ns | 66.64 ns | +0.3% |
Pointer_Object_Try_Traverse |
73.88 ns | 73.64 ns | -0.3% |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
163.75 ns | 192.72 ns | +17.7% |
Pointer_Walker_Schema_ISO_Language |
11.22 ms | 10.89 ms | -3.0% |
Pointer_Untracked_Deeply_Nested |
2.46 ms | 2.53 ms | +2.9% |
Pointer_Tracked_Deeply_Nested |
3.75 ms | 3.72 ms | -0.9% |
Pointer_Position_Tracker_Get_Deeply_Nested |
597.32 ns | 540.61 ns | -9.5% |
Schema_Tracker_ISO_Language |
10.79 ms | 10.52 ms | -2.5% |
Schema_Tracker_ISO_Language_To_JSON |
62.77 ms | 61.98 ms | -1.3% |
Schema_Frame_WoT_References |
5.17 ms | 5.18 ms | +0.1% |
Schema_Frame_OMC_References |
22.39 ms | 22.26 ms | -0.6% |
Schema_Frame_OMC_Pointers |
41.63 ms | 41.19 ms | -1.0% |
Schema_Frame_OMC_Locations |
19.02 ms | 18.75 ms | -1.4% |
Schema_Frame_ISO_Language_Locations |
77.36 ms | 80.10 ms | +3.5% |
Schema_Frame_ISO_Language_Root |
2.32 us | 2.20 us | -5.2% |
Schema_Frame_KrakenD_References |
37.73 ms | 38.88 ms | +3.1% |
Schema_Frame_KrakenD_Reachable |
298.62 ms | 299.25 ms | +0.2% |
Schema_Frame_ISO_Language_Locations_To_JSON |
159.41 ms | 159.91 ms | +0.3% |
Schema_Frame_Many_Resources_References |
697.04 ms | 685.93 ms | -1.6% |
Schema_Frame_Deeply_Nested_References |
22.52 ms | 23.55 ms | +4.5% |
Schema_Format_ISO_Language |
83.39 ms | 87.14 ms | +4.5% |
Schema_Bundle_Meta_2020_12 |
1.41 ms | 1.42 ms | +0.5% |
Schema_Bundle_Many_Remotes_With_Fragments |
29.05 ms | 29.30 ms | +0.9% |
OpenAPI_Format_Synthetic_3_1 |
118.68 ms | 117.58 ms | -0.9% |
JSONPath_Descendant_Filter_Nested |
2.41 us | 2.41 us | +0.2% |
URITemplateRouter_Create |
39.52 us | 39.15 us | -0.9% |
URITemplateRouter_Match |
232.61 ns | 234.07 ns | +0.6% |
URITemplateRouterView_Restore |
33.51 us | 32.56 us | -2.8% |
URITemplateRouterView_Match |
213.02 ns | 213.22 ns | +0.1% |
URITemplateRouterView_Arguments |
547.67 ns | 545.88 ns | -0.3% |
URITemplateRouter_Match_BasePath |
263.25 ns | 266.44 ns | +1.2% |
URITemplateRouterView_Match_BasePath |
241.98 ns | 242.11 ns | +0.1% |
JSONL_Parse_Large |
32.32 ms | 31.68 ms | -2.0% |
JSONL_Parse_Large_GZIP |
30.94 ms | 30.52 ms | -1.4% |
JSONLD_Catalog_Annotation_List_Populate |
2.99 ms | 2.96 ms | -1.0% |
JSONLD_Catalog_Materialize |
7.79 ms | 7.87 ms | +1.1% |
HTML_Build_Table_100000 |
67.95 ms | 68.07 ms | +0.2% |
HTML_Render_Table_100000 |
8.33 ms | 8.08 ms | -3.0% |
Markdown_To_HTML_Realistic_Document |
5.70 ms | 5.66 ms | -0.8% |
Markdown_To_HTML_Pathological |
17.84 ms | 18.08 ms | +1.4% |
Markdown_To_HTML_Short_Descriptions |
714.83 ns | 705.78 ns | -1.3% |
GZIP_Compress_ISO_Language_Set_3_Locations |
37.72 ms | 37.87 ms | +0.4% |
GZIP_Decompress_ISO_Language_Set_3_Locations |
9.70 ms | 9.54 ms | -1.7% |
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations |
12.03 ms | 11.95 ms | -0.7% |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
15.66 ms | 14.65 ms | -6.4% |
GZIP_Compress_ISO_Language_Set_3_Schema |
2.31 ms | 2.30 ms | -0.4% |
GZIP_Decompress_ISO_Language_Set_3_Schema |
655.13 us | 630.77 us | -3.7% |
JOSE_VerifySignature_RS256 |
21.26 us | 21.29 us | +0.1% |
JOSE_VerifySignature_ES512 |
1.37 ms | 1.36 ms | -0.3% |
Crypto_CRC32_Large_JSONL |
103.50 us | 102.97 us | -0.5% |
Crypto_AES_GCM_Encrypt_128_1KB |
2.36 us | 2.36 us | +0.2% |
Crypto_AES_GCM_Decrypt_128_1KB |
2.38 us | 2.38 us | -0.0% |
Crypto_AES_GCM_Encrypt_256_1KB |
2.42 us | 2.43 us | +0.4% |
There was a problem hiding this comment.
1 issue found across 7 files
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="src/core/openapi/include/sourcemeta/core/openapi.h">
<violation number="1" location="src/core/openapi/include/sourcemeta/core/openapi.h:116">
P2: `openapi_is_document` returns true for `{"openapi":""}`, so it only detects a string-valued root field; it does not establish that the value is an OpenAPI Description. Describe it as a discriminator rather than a validity check.</violation>
</file>
Requires human review: Auto-approval blocked because this review re-detected 3 unresolved issues already reported by Cubic.
Re-trigger cubic
| /// Whether a value is an OpenAPI Description at all, whichever revision it | ||
| /// declares, which is what tells one from a schema. For example: |
There was a problem hiding this comment.
P2: openapi_is_document returns true for {"openapi":""}, so it only detects a string-valued root field; it does not establish that the value is an OpenAPI Description. Describe it as a discriminator rather than a validity check.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. At src/core/openapi/include/sourcemeta/core/openapi.h, line 116:
<comment>`openapi_is_document` returns true for `{"openapi":""}`, so it only detects a string-valued root field; it does not establish that the value is an OpenAPI Description. Describe it as a discriminator rather than a validity check.</comment>
<file context>
@@ -87,6 +87,83 @@ SOURCEMETA_CORE_OPENAPI_EXPORT
+ -> std::optional<JSON::StringView>;
+
+/// @ingroup openapi
+/// Whether a value is an OpenAPI Description at all, whichever revision it
+/// declares, which is what tells one from a schema. For example:
+///
</file context>
| /// Whether a value is an OpenAPI Description at all, whichever revision it | |
| /// declares, which is what tells one from a schema. For example: | |
| /// Whether a value has a string-valued root `openapi` field, including | |
| /// unrecognised revision strings. For example: |
Benchmark
|
| Benchmark | main |
This branch | Change |
|---|---|---|---|
JSON_Object_Defines_Miss_Same_Length |
2.80 ns | 3.42 ns | +22.2% |
JSON_Parse_Object_Array_Properties |
6.92 us | 7.39 us | +6.8% |
JSON_Parse_String_Escape_Heavy |
16.38 us | 17.36 us | +6.0% |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 |
13.07 ns | 13.83 ns | +5.8% |
Schema_Frame_ISO_Language_Locations |
38.85 ms | 41.09 ms | +5.8% |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
8.74 ms | 9.24 ms | +5.7% |
JSON_String_Equal_100 |
6.35 ns | 6.00 ns | -5.5% |
URITemplateRouterView_Match_BasePath |
154.15 ns | 142.31 ns | -7.7% |
Regex_Caret_Slash_Period_Asterisk |
8.01 ns | 7.08 ns | -11.6% |
JSON_Object_At_Last_Key_512 |
385.40 ns | 317.30 ns | -17.7% |
JSON_Object_At_Last_Key_8 |
5.61 ns | 3.82 ns | -31.9% |
JSON_Object_At_Last_Key_128 |
87.18 ns | 48.58 ns | -44.3% |
JSON_Object_At_Last_Key_32 |
21.50 ns | 11.87 ns | -44.8% |
All 110 benchmarks
| Benchmark | main |
This branch | Change |
|---|---|---|---|
Crypto_CRC32_Large_JSONL |
101.48 us | 101.41 us | -0.1% |
Crypto_AES_GCM_Encrypt_128_1KB |
1.23 us | 1.26 us | +1.8% |
Crypto_AES_GCM_Decrypt_128_1KB |
1.21 us | 1.23 us | +1.4% |
Crypto_AES_GCM_Encrypt_256_1KB |
1.27 us | 1.29 us | +0.8% |
JOSE_VerifySignature_RS256 |
22.24 us | 22.20 us | -0.2% |
JOSE_VerifySignature_ES512 |
581.89 us | 581.42 us | -0.1% |
GZIP_Compress_ISO_Language_Set_3_Locations |
29.86 ms | 30.14 ms | +1.0% |
GZIP_Decompress_ISO_Language_Set_3_Locations |
5.16 ms | 5.21 ms | +1.1% |
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations |
7.27 ms | 7.26 ms | -0.2% |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
8.74 ms | 9.24 ms | +5.7% |
GZIP_Compress_ISO_Language_Set_3_Schema |
2.04 ms | 2.05 ms | +0.6% |
GZIP_Decompress_ISO_Language_Set_3_Schema |
425.33 us | 425.85 us | +0.1% |
Markdown_To_HTML_Realistic_Document |
5.12 ms | 5.24 ms | +2.4% |
Markdown_To_HTML_Pathological |
13.49 ms | 13.75 ms | +1.9% |
Markdown_To_HTML_Short_Descriptions |
701.84 ns | 701.29 ns | -0.1% |
HTML_Build_Table_100000 |
38.48 ms | 39.00 ms | +1.3% |
HTML_Render_Table_100000 |
1.91 ms | 1.92 ms | +0.8% |
JSONLD_Catalog_Annotation_List_Populate |
754.39 us | 718.02 us | -4.8% |
JSONLD_Catalog_Materialize |
3.68 ms | 3.63 ms | -1.4% |
JSONL_Parse_Large |
10.27 ms | 10.26 ms | -0.1% |
JSONL_Parse_Large_GZIP |
10.48 ms | 10.43 ms | -0.5% |
URITemplateRouter_Create |
22.52 us | 21.67 us | -3.8% |
URITemplateRouter_Match |
156.04 ns | 157.10 ns | +0.7% |
URITemplateRouterView_Restore |
8.42 us | 8.33 us | -1.0% |
URITemplateRouterView_Match |
131.15 ns | 128.95 ns | -1.7% |
URITemplateRouterView_Arguments |
474.37 ns | 472.91 ns | -0.3% |
URITemplateRouter_Match_BasePath |
178.57 ns | 182.80 ns | +2.4% |
URITemplateRouterView_Match_BasePath |
154.15 ns | 142.31 ns | -7.7% |
JSONPath_Descendant_Filter_Nested |
1.71 us | 1.69 us | -1.5% |
OpenAPI_Format_Synthetic_3_1 |
48.72 ms | 49.85 ms | +2.3% |
Schema_Frame_WoT_References |
2.29 ms | 2.24 ms | -2.1% |
Schema_Frame_OMC_References |
9.98 ms | 9.82 ms | -1.6% |
Schema_Frame_OMC_Pointers |
18.72 ms | 18.30 ms | -2.2% |
Schema_Frame_OMC_Locations |
8.60 ms | 8.53 ms | -0.9% |
Schema_Frame_ISO_Language_Locations |
38.85 ms | 41.09 ms | +5.8% |
Schema_Frame_ISO_Language_Root |
345.93 ns | 329.39 ns | -4.8% |
Schema_Frame_KrakenD_References |
15.68 ms | 15.75 ms | +0.5% |
Schema_Frame_KrakenD_Reachable |
143.14 ms | 142.27 ms | -0.6% |
Schema_Frame_ISO_Language_Locations_To_JSON |
32.83 ms | 33.51 ms | +2.1% |
Schema_Frame_Many_Resources_References |
137.63 ms | 141.17 ms | +2.6% |
Schema_Frame_Deeply_Nested_References |
10.68 ms | 10.80 ms | +1.1% |
Schema_Format_ISO_Language |
44.29 ms | 45.97 ms | +3.8% |
Schema_Bundle_Meta_2020_12 |
655.32 us | 646.28 us | -1.4% |
Schema_Bundle_Many_Remotes_With_Fragments |
7.26 ms | 7.15 ms | -1.6% |
Pointer_Object_Traverse |
23.11 ns | 23.26 ns | +0.7% |
Pointer_Object_Try_Traverse |
24.52 ns | 24.52 ns | +0.0% |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
129.93 ns | 130.89 ns | +0.7% |
Pointer_Walker_Schema_ISO_Language |
1.49 ms | 1.49 ms | +0.1% |
Pointer_Untracked_Deeply_Nested |
1.49 ms | 1.49 ms | +0.3% |
Pointer_Tracked_Deeply_Nested |
2.18 ms | 2.25 ms | +2.9% |
Pointer_Position_Tracker_Get_Deeply_Nested |
607.14 ns | 612.41 ns | +0.9% |
Schema_Tracker_ISO_Language |
4.93 ms | 4.93 ms | -0.0% |
Schema_Tracker_ISO_Language_To_JSON |
15.88 ms | 15.53 ms | -2.2% |
JSON_Array_Of_Objects_Unique |
450.67 ns | 466.93 ns | +3.6% |
JSON_Array_Of_Integers_Unique_256 |
4.18 us | 4.03 us | -3.6% |
JSON_Array_Of_Strings_Unique_Colliding_256 |
202.27 us | 199.78 us | -1.2% |
JSON_Parse_1 |
5.61 us | 5.62 us | +0.1% |
JSON_Parse_Real |
5.55 us | 5.65 us | +1.6% |
JSON_Parse_Decimal |
10.16 us | 10.25 us | +0.9% |
JSON_Parse_Schema_ISO_Language |
3.82 ms | 3.81 ms | -0.3% |
JSON_Parse_Integer |
4.29 us | 4.36 us | +1.6% |
JSON_Parse_String_NonSSO_Plain |
3.74 us | 3.82 us | +2.1% |
JSON_Parse_String_SSO_Plain |
3.00 us | 3.04 us | +1.3% |
JSON_Parse_String_Escape_Heavy |
16.38 us | 17.36 us | +6.0% |
JSON_Parse_Object_Short_Keys |
11.00 us | 11.10 us | +0.9% |
JSON_Parse_Object_Scalar_Properties |
5.57 us | 5.64 us | +1.4% |
JSON_Parse_Object_Array_Properties |
6.92 us | 7.39 us | +6.8% |
JSON_Parse_Object_Object_Properties |
7.00 us | 7.04 us | +0.5% |
JSON_Parse_Nested_Containers |
43.02 us | 43.37 us | +0.8% |
JSON_Fast_Hash_Helm_Chart_Lock |
75.86 ns | 75.48 ns | -0.5% |
JSON_Equality_Helm_Chart_Lock |
170.67 ns | 170.59 ns | -0.0% |
JSON_String_Equal_10 |
5.72 ns | 5.69 ns | -0.6% |
JSON_String_Equal_100 |
6.35 ns | 6.00 ns | -5.5% |
JSON_String_Equal_Small_By_Perfect_Hash_10 |
0.62 ns | 0.62 ns | +0.2% |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 |
13.07 ns | 13.83 ns | +5.8% |
JSON_String_Fast_Hash_10 |
3.15 ns | 3.15 ns | +0.0% |
JSON_String_Fast_Hash_100 |
3.15 ns | 3.15 ns | -0.0% |
JSON_String_Key_Hash_10 |
3.06 ns | 2.92 ns | -4.5% |
JSON_String_Key_Hash_100 |
13.38 ns | 13.38 ns | -0.0% |
JSON_Object_Defines_Miss_Same_Length |
2.80 ns | 3.42 ns | +22.2% |
JSON_Object_Defines_Miss_Too_Small |
3.11 ns | 3.11 ns | +0.0% |
JSON_Object_Defines_Miss_Too_Large |
3.11 ns | 3.11 ns | -0.0% |
JSON_From_String_Copy |
9.27 ns | 9.18 ns | -1.0% |
JSON_From_String_Temporary |
8.44 ns | 8.37 ns | -0.9% |
JSON_Number_To_Double |
26.16 ns | 26.58 ns | +1.6% |
JSON_Object_At_Last_Key_8 |
5.61 ns | 3.82 ns | -31.9% |
JSON_Object_At_Last_Key_32 |
21.50 ns | 11.87 ns | -44.8% |
JSON_Object_At_Last_Key_128 |
87.18 ns | 48.58 ns | -44.3% |
JSON_Object_At_Last_Key_512 |
385.40 ns | 317.30 ns | -17.7% |
JSON_Divisible_By_Decimal |
613.66 ns | 612.94 ns | -0.1% |
JSON_PropertySet_Contains |
46.98 ns | 48.30 ns | +2.8% |
JSON_PropertySet_Filter_Object_Properties |
40.79 ns | 40.03 ns | -1.9% |
JSON_PropertySet_Insert |
510.76 ns | 492.77 ns | -3.5% |
JSON_Stringify_Schema_Web_Of_Things |
64.31 us | 62.25 us | -3.2% |
JSON_Prettify_Schema_Web_Of_Things |
175.04 us | 174.12 us | -0.5% |
Regex_Lower_S_Or_Upper_S_Asterisk |
2.10 ns | 2.10 ns | +0.0% |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.02 ns | 2.10 ns | +3.9% |
Regex_Period_Asterisk |
2.10 ns | 2.10 ns | -0.1% |
Regex_Group_Period_Asterisk_Group |
2.10 ns | 2.02 ns | -3.7% |
Regex_Period_Plus |
2.10 ns | 2.10 ns | +0.0% |
Regex_Period |
2.02 ns | 2.10 ns | +3.8% |
Regex_Caret_Period_Plus_Dollar |
2.10 ns | 2.10 ns | -0.0% |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.10 ns | 2.03 ns | -3.6% |
Regex_Caret_Period_Asterisk_Dollar |
2.10 ns | 2.10 ns | +0.0% |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.02 ns | 2.10 ns | +3.8% |
Regex_Caret_X_Hyphen |
6.46 ns | 6.46 ns | -0.0% |
Regex_Period_Md_Dollar |
30.53 ns | 30.87 ns | +1.1% |
Regex_Caret_Slash_Period_Asterisk |
8.01 ns | 7.08 ns | -11.6% |
Regex_Caret_Period_Range_Dollar |
3.27 ns | 3.34 ns | +2.4% |
Regex_Nested_Backtrack |
39.83 ns | 39.31 ns | -1.3% |
Benchmark
|
| Benchmark | main |
This branch | Change |
|---|---|---|---|
Regex_Caret_Period_Asterisk_Dollar |
1.70 ns | 2.34 ns | +37.4% |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.85 ns | 2.46 ns | +33.1% |
JSON_Number_To_Double |
9.52 ns | 12.34 ns | +29.6% |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.13 ns | 2.70 ns | +27.1% |
Regex_Lower_S_Or_Upper_S_Asterisk |
1.84 ns | 2.30 ns | +25.1% |
JSON_Parse_Nested_Containers |
21.77 us | 27.23 us | +25.1% |
JSON_Equality_Helm_Chart_Lock |
154.75 ns | 193.51 ns | +25.0% |
Regex_Period_Md_Dollar |
19.10 ns | 23.85 ns | +24.8% |
JSON_Parse_Object_Scalar_Properties |
2.57 us | 3.15 us | +22.6% |
GZIP_Decompress_ISO_Language_Set_3_Schema |
321.53 us | 393.57 us | +22.4% |
JSON_Array_Of_Integers_Unique_256 |
4.42 us | 5.41 us | +22.3% |
JSON_Fast_Hash_Helm_Chart_Lock |
54.34 ns | 66.33 ns | +22.1% |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.78 ns | 2.17 ns | +21.6% |
Regex_Group_Period_Asterisk_Group |
1.82 ns | 2.20 ns | +21.3% |
Regex_Period_Asterisk |
1.81 ns | 2.18 ns | +20.7% |
Regex_Period_Plus |
2.06 ns | 2.49 ns | +20.7% |
JSON_Parse_Object_Array_Properties |
3.06 us | 3.69 us | +20.5% |
Regex_Period |
2.12 ns | 2.55 ns | +20.3% |
Regex_Caret_Period_Plus_Dollar |
2.04 ns | 2.45 ns | +20.2% |
JSON_Parse_Object_Object_Properties |
3.11 us | 3.74 us | +20.2% |
Regex_Nested_Backtrack |
29.06 ns | 34.64 ns | +19.2% |
JSON_Array_Of_Objects_Unique |
374.23 ns | 442.83 ns | +18.3% |
JSON_From_String_Temporary |
6.24 ns | 7.38 ns | +18.2% |
JSON_String_Fast_Hash_100 |
2.03 ns | 2.38 ns | +17.3% |
Markdown_To_HTML_Realistic_Document |
4.70 ms | 5.51 ms | +17.2% |
JSON_String_Equal_100 |
6.96 ns | 8.12 ns | +16.7% |
JSON_String_Equal_10 |
6.31 ns | 7.32 ns | +16.1% |
JSON_Object_At_Last_Key_8 |
4.23 ns | 4.91 ns | +16.1% |
JSON_Parse_String_SSO_Plain |
1.65 us | 1.88 us | +13.7% |
JSON_Parse_String_Escape_Heavy |
16.05 us | 17.98 us | +12.0% |
JSON_String_Fast_Hash_10 |
2.43 ns | 2.70 ns | +11.4% |
JSON_Parse_Real |
3.11 us | 3.45 us | +10.9% |
JSON_Object_Defines_Miss_Too_Small |
5.08 ns | 5.59 ns | +10.1% |
JSON_Object_Defines_Miss_Too_Large |
2.75 ns | 3.03 ns | +10.1% |
JSON_Parse_String_NonSSO_Plain |
3.00 us | 3.30 us | +9.9% |
JSON_From_String_Copy |
10.74 ns | 11.77 ns | +9.6% |
JSON_Parse_Decimal |
5.33 us | 5.80 us | +8.9% |
Regex_Caret_X_Hyphen |
6.79 ns | 7.39 ns | +8.7% |
Crypto_AES_GCM_Decrypt_128_1KB |
4.72 us | 5.12 us | +8.5% |
Regex_Caret_Period_Range_Dollar |
2.21 ns | 2.39 ns | +8.2% |
JSON_Parse_1 |
3.14 us | 3.38 us | +7.4% |
JSON_Parse_Object_Short_Keys |
5.37 us | 5.72 us | +6.6% |
JSON_Object_At_Last_Key_128 |
69.34 ns | 73.70 ns | +6.3% |
GZIP_Compress_ISO_Language_Set_3_Schema |
2.36 ms | 2.47 ms | +5.0% |
JOSE_VerifySignature_RS256 |
25.64 us | 24.30 us | -5.2% |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4.47 ms | 4.21 ms | -5.8% |
JSON_String_Key_Hash_100 |
2.38 ns | 2.24 ns | -5.9% |
Schema_Frame_KrakenD_References |
19.74 ms | 18.53 ms | -6.1% |
JSON_Stringify_Schema_Web_Of_Things |
69.95 us | 65.43 us | -6.5% |
Markdown_To_HTML_Pathological |
15.10 ms | 13.90 ms | -8.0% |
URITemplateRouterView_Restore |
13.81 us | 12.71 us | -8.0% |
JSON_PropertySet_Filter_Object_Properties |
48.39 ns | 44.36 ns | -8.3% |
OpenAPI_Format_Synthetic_3_1 |
57.30 ms | 52.45 ms | -8.5% |
Schema_Frame_KrakenD_Reachable |
237.69 ms | 214.90 ms | -9.6% |
JSON_Object_At_Last_Key_32 |
16.61 ns | 14.95 ns | -10.0% |
Pointer_Walker_Schema_ISO_Language |
1.60 ms | 1.44 ms | -10.2% |
URITemplateRouter_Match |
218.91 ns | 192.15 ns | -12.2% |
JOSE_VerifySignature_ES512 |
1.33 ms | 1.16 ms | -12.6% |
Schema_Frame_ISO_Language_Locations_To_JSON |
30.96 ms | 27.05 ms | -12.6% |
URITemplateRouterView_Arguments |
757.20 ns | 660.87 ns | -12.7% |
JSON_PropertySet_Contains |
70.23 ns | 61.09 ns | -13.0% |
JSON_PropertySet_Insert |
385.31 ns | 332.10 ns | -13.8% |
Schema_Bundle_Meta_2020_12 |
546.20 us | 468.27 us | -14.3% |
Pointer_Untracked_Deeply_Nested |
1.14 ms | 971.19 us | -14.5% |
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations |
6.36 ms | 5.44 ms | -14.5% |
Schema_Tracker_ISO_Language_To_JSON |
15.55 ms | 13.28 ms | -14.6% |
Pointer_Object_Traverse |
26.08 ns | 22.09 ns | -15.3% |
HTML_Render_Table_100000 |
2.74 ms | 2.32 ms | -15.5% |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
194.73 ns | 164.25 ns | -15.7% |
URITemplateRouter_Create |
25.42 us | 21.28 us | -16.3% |
JSON_Divisible_By_Decimal |
528.28 ns | 439.10 ns | -16.9% |
JSONPath_Descendant_Filter_Nested |
1.85 us | 1.54 us | -17.0% |
Crypto_CRC32_Large_JSONL |
28.09 us | 23.23 us | -17.3% |
Schema_Frame_OMC_References |
13.04 ms | 10.78 ms | -17.4% |
URITemplateRouterView_Match |
194.75 ns | 160.73 ns | -17.5% |
Pointer_Position_Tracker_Get_Deeply_Nested |
487.23 ns | 396.01 ns | -18.7% |
Schema_Bundle_Many_Remotes_With_Fragments |
7.02 ms | 5.64 ms | -19.8% |
Schema_Frame_WoT_References |
2.69 ms | 2.16 ms | -19.8% |
JSON_Prettify_Schema_Web_Of_Things |
229.36 us | 183.43 us | -20.0% |
Schema_Tracker_ISO_Language |
4.36 ms | 3.48 ms | -20.1% |
JSON_Object_At_Last_Key_512 |
303.82 ns | 242.52 ns | -20.2% |
Crypto_AES_GCM_Encrypt_256_1KB |
5.90 us | 4.69 us | -20.5% |
GZIP_Compress_ISO_Language_Set_3_Locations |
47.35 ms | 37.62 ms | -20.6% |
URITemplateRouter_Match_BasePath |
292.01 ns | 231.39 ns | -20.8% |
Pointer_Tracked_Deeply_Nested |
1.50 ms | 1.19 ms | -20.9% |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
8.90 ms | 6.95 ms | -21.9% |
Schema_Frame_ISO_Language_Root |
175.84 ns | 135.73 ns | -22.8% |
Schema_Frame_Deeply_Nested_References |
17.56 ms | 13.38 ms | -23.8% |
Pointer_Object_Try_Traverse |
52.85 ns | 39.84 ns | -24.6% |
URITemplateRouterView_Match_BasePath |
229.89 ns | 172.22 ns | -25.1% |
Schema_Frame_Many_Resources_References |
175.67 ms | 128.17 ms | -27.0% |
Crypto_AES_GCM_Encrypt_128_1KB |
5.33 us | 3.85 us | -27.7% |
Schema_Frame_OMC_Pointers |
26.96 ms | 19.19 ms | -28.8% |
JSONL_Parse_Large |
9.34 ms | 6.56 ms | -29.8% |
Markdown_To_HTML_Short_Descriptions |
600.48 ns | 421.36 ns | -29.8% |
Schema_Frame_OMC_Locations |
13.14 ms | 9.13 ms | -30.5% |
HTML_Build_Table_100000 |
47.66 ms | 31.15 ms | -34.6% |
Schema_Format_ISO_Language |
41.53 ms | 25.90 ms | -37.6% |
Schema_Frame_ISO_Language_Locations |
37.52 ms | 23.34 ms | -37.8% |
JSONL_Parse_Large_GZIP |
10.54 ms | 6.47 ms | -38.6% |
JSONLD_Catalog_Annotation_List_Populate |
1.06 ms | 639.27 us | -39.7% |
JSONLD_Catalog_Materialize |
4.91 ms | 2.73 ms | -44.4% |
All 110 benchmarks
| Benchmark | main |
This branch | Change |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
1.84 ns | 2.30 ns | +25.1% |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.85 ns | 2.46 ns | +33.1% |
Regex_Period_Asterisk |
1.81 ns | 2.18 ns | +20.7% |
Regex_Group_Period_Asterisk_Group |
1.82 ns | 2.20 ns | +21.3% |
Regex_Period_Plus |
2.06 ns | 2.49 ns | +20.7% |
Regex_Period |
2.12 ns | 2.55 ns | +20.3% |
Regex_Caret_Period_Plus_Dollar |
2.04 ns | 2.45 ns | +20.2% |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.13 ns | 2.70 ns | +27.1% |
Regex_Caret_Period_Asterisk_Dollar |
1.70 ns | 2.34 ns | +37.4% |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.78 ns | 2.17 ns | +21.6% |
Regex_Caret_X_Hyphen |
6.79 ns | 7.39 ns | +8.7% |
Regex_Period_Md_Dollar |
19.10 ns | 23.85 ns | +24.8% |
Regex_Caret_Slash_Period_Asterisk |
5.26 ns | 5.07 ns | -3.6% |
Regex_Caret_Period_Range_Dollar |
2.21 ns | 2.39 ns | +8.2% |
Regex_Nested_Backtrack |
29.06 ns | 34.64 ns | +19.2% |
JSON_Array_Of_Objects_Unique |
374.23 ns | 442.83 ns | +18.3% |
JSON_Array_Of_Integers_Unique_256 |
4.42 us | 5.41 us | +22.3% |
JSON_Array_Of_Strings_Unique_Colliding_256 |
165.75 us | 171.94 us | +3.7% |
JSON_Parse_1 |
3.14 us | 3.38 us | +7.4% |
JSON_Parse_Real |
3.11 us | 3.45 us | +10.9% |
JSON_Parse_Decimal |
5.33 us | 5.80 us | +8.9% |
JSON_Parse_Schema_ISO_Language |
2.21 ms | 2.28 ms | +3.4% |
JSON_Parse_Integer |
2.53 us | 2.56 us | +0.9% |
JSON_Parse_String_NonSSO_Plain |
3.00 us | 3.30 us | +9.9% |
JSON_Parse_String_SSO_Plain |
1.65 us | 1.88 us | +13.7% |
JSON_Parse_String_Escape_Heavy |
16.05 us | 17.98 us | +12.0% |
JSON_Parse_Object_Short_Keys |
5.37 us | 5.72 us | +6.6% |
JSON_Parse_Object_Scalar_Properties |
2.57 us | 3.15 us | +22.6% |
JSON_Parse_Object_Array_Properties |
3.06 us | 3.69 us | +20.5% |
JSON_Parse_Object_Object_Properties |
3.11 us | 3.74 us | +20.2% |
JSON_Parse_Nested_Containers |
21.77 us | 27.23 us | +25.1% |
JSON_Fast_Hash_Helm_Chart_Lock |
54.34 ns | 66.33 ns | +22.1% |
JSON_Equality_Helm_Chart_Lock |
154.75 ns | 193.51 ns | +25.0% |
JSON_String_Equal_10 |
6.31 ns | 7.32 ns | +16.1% |
JSON_String_Equal_100 |
6.96 ns | 8.12 ns | +16.7% |
JSON_String_Equal_Small_By_Perfect_Hash_10 |
0.37 ns | 0.37 ns | +2.3% |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 |
3.64 ns | 3.57 ns | -1.8% |
JSON_String_Fast_Hash_10 |
2.43 ns | 2.70 ns | +11.4% |
JSON_String_Fast_Hash_100 |
2.03 ns | 2.38 ns | +17.3% |
JSON_String_Key_Hash_10 |
1.70 ns | 1.71 ns | +0.5% |
JSON_String_Key_Hash_100 |
2.38 ns | 2.24 ns | -5.9% |
JSON_Object_Defines_Miss_Same_Length |
2.95 ns | 3.08 ns | +4.2% |
JSON_Object_Defines_Miss_Too_Small |
5.08 ns | 5.59 ns | +10.1% |
JSON_Object_Defines_Miss_Too_Large |
2.75 ns | 3.03 ns | +10.1% |
JSON_From_String_Copy |
10.74 ns | 11.77 ns | +9.6% |
JSON_From_String_Temporary |
6.24 ns | 7.38 ns | +18.2% |
JSON_Number_To_Double |
9.52 ns | 12.34 ns | +29.6% |
JSON_Object_At_Last_Key_8 |
4.23 ns | 4.91 ns | +16.1% |
JSON_Object_At_Last_Key_32 |
16.61 ns | 14.95 ns | -10.0% |
JSON_Object_At_Last_Key_128 |
69.34 ns | 73.70 ns | +6.3% |
JSON_Object_At_Last_Key_512 |
303.82 ns | 242.52 ns | -20.2% |
JSON_Divisible_By_Decimal |
528.28 ns | 439.10 ns | -16.9% |
JSON_PropertySet_Contains |
70.23 ns | 61.09 ns | -13.0% |
JSON_PropertySet_Filter_Object_Properties |
48.39 ns | 44.36 ns | -8.3% |
JSON_PropertySet_Insert |
385.31 ns | 332.10 ns | -13.8% |
JSON_Stringify_Schema_Web_Of_Things |
69.95 us | 65.43 us | -6.5% |
JSON_Prettify_Schema_Web_Of_Things |
229.36 us | 183.43 us | -20.0% |
Pointer_Object_Traverse |
26.08 ns | 22.09 ns | -15.3% |
Pointer_Object_Try_Traverse |
52.85 ns | 39.84 ns | -24.6% |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
194.73 ns | 164.25 ns | -15.7% |
Pointer_Walker_Schema_ISO_Language |
1.60 ms | 1.44 ms | -10.2% |
Pointer_Untracked_Deeply_Nested |
1.14 ms | 971.19 us | -14.5% |
Pointer_Tracked_Deeply_Nested |
1.50 ms | 1.19 ms | -20.9% |
Pointer_Position_Tracker_Get_Deeply_Nested |
487.23 ns | 396.01 ns | -18.7% |
Schema_Tracker_ISO_Language |
4.36 ms | 3.48 ms | -20.1% |
Schema_Tracker_ISO_Language_To_JSON |
15.55 ms | 13.28 ms | -14.6% |
Schema_Frame_WoT_References |
2.69 ms | 2.16 ms | -19.8% |
Schema_Frame_OMC_References |
13.04 ms | 10.78 ms | -17.4% |
Schema_Frame_OMC_Pointers |
26.96 ms | 19.19 ms | -28.8% |
Schema_Frame_OMC_Locations |
13.14 ms | 9.13 ms | -30.5% |
Schema_Frame_ISO_Language_Locations |
37.52 ms | 23.34 ms | -37.8% |
Schema_Frame_ISO_Language_Root |
175.84 ns | 135.73 ns | -22.8% |
Schema_Frame_KrakenD_References |
19.74 ms | 18.53 ms | -6.1% |
Schema_Frame_KrakenD_Reachable |
237.69 ms | 214.90 ms | -9.6% |
Schema_Frame_ISO_Language_Locations_To_JSON |
30.96 ms | 27.05 ms | -12.6% |
Schema_Frame_Many_Resources_References |
175.67 ms | 128.17 ms | -27.0% |
Schema_Frame_Deeply_Nested_References |
17.56 ms | 13.38 ms | -23.8% |
Schema_Format_ISO_Language |
41.53 ms | 25.90 ms | -37.6% |
Schema_Bundle_Meta_2020_12 |
546.20 us | 468.27 us | -14.3% |
Schema_Bundle_Many_Remotes_With_Fragments |
7.02 ms | 5.64 ms | -19.8% |
OpenAPI_Format_Synthetic_3_1 |
57.30 ms | 52.45 ms | -8.5% |
JSONPath_Descendant_Filter_Nested |
1.85 us | 1.54 us | -17.0% |
URITemplateRouter_Create |
25.42 us | 21.28 us | -16.3% |
URITemplateRouter_Match |
218.91 ns | 192.15 ns | -12.2% |
URITemplateRouterView_Restore |
13.81 us | 12.71 us | -8.0% |
URITemplateRouterView_Match |
194.75 ns | 160.73 ns | -17.5% |
URITemplateRouterView_Arguments |
757.20 ns | 660.87 ns | -12.7% |
URITemplateRouter_Match_BasePath |
292.01 ns | 231.39 ns | -20.8% |
URITemplateRouterView_Match_BasePath |
229.89 ns | 172.22 ns | -25.1% |
JSONL_Parse_Large |
9.34 ms | 6.56 ms | -29.8% |
JSONL_Parse_Large_GZIP |
10.54 ms | 6.47 ms | -38.6% |
JSONLD_Catalog_Annotation_List_Populate |
1.06 ms | 639.27 us | -39.7% |
JSONLD_Catalog_Materialize |
4.91 ms | 2.73 ms | -44.4% |
HTML_Build_Table_100000 |
47.66 ms | 31.15 ms | -34.6% |
HTML_Render_Table_100000 |
2.74 ms | 2.32 ms | -15.5% |
Markdown_To_HTML_Realistic_Document |
4.70 ms | 5.51 ms | +17.2% |
Markdown_To_HTML_Pathological |
15.10 ms | 13.90 ms | -8.0% |
Markdown_To_HTML_Short_Descriptions |
600.48 ns | 421.36 ns | -29.8% |
GZIP_Compress_ISO_Language_Set_3_Locations |
47.35 ms | 37.62 ms | -20.6% |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4.47 ms | 4.21 ms | -5.8% |
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations |
6.36 ms | 5.44 ms | -14.5% |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
8.90 ms | 6.95 ms | -21.9% |
GZIP_Compress_ISO_Language_Set_3_Schema |
2.36 ms | 2.47 ms | +5.0% |
GZIP_Decompress_ISO_Language_Set_3_Schema |
321.53 us | 393.57 us | +22.4% |
JOSE_VerifySignature_RS256 |
25.64 us | 24.30 us | -5.2% |
JOSE_VerifySignature_ES512 |
1.33 ms | 1.16 ms | -12.6% |
Crypto_CRC32_Large_JSONL |
28.09 us | 23.23 us | -17.3% |
Crypto_AES_GCM_Encrypt_128_1KB |
5.33 us | 3.85 us | -27.7% |
Crypto_AES_GCM_Decrypt_128_1KB |
4.72 us | 5.12 us | +8.5% |
Crypto_AES_GCM_Encrypt_256_1KB |
5.90 us | 4.69 us | -20.5% |
Signed-off-by: Juan Cruz Viotti <[email protected]>
There was a problem hiding this comment.
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. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="src/core/openapi/document.h">
<violation number="1" location="src/core/openapi/document.h:366">
P3: The added comment says `openapi_base` reports the base "without reading the document at all", but the function reads the `$self` field from the document (`document.try_at("$self", OPENAPI_HASH_SELF)` in frame.cc). Clarify that it reads nothing but the `$self` field, so the claim is accurate rather than overreaching.</violation>
</file>
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
| // and the public sourcemeta::core::openapi_base says what that is without | ||
| // reading the document at all |
There was a problem hiding this comment.
P3: The added comment says openapi_base reports the base "without reading the document at all", but the function reads the $self field from the document (document.try_at("$self", OPENAPI_HASH_SELF) in frame.cc). Clarify that it reads nothing but the $self field, so the claim is accurate rather than overreaching.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. At src/core/openapi/document.h, line 366:
<comment>The added comment says `openapi_base` reports the base "without reading the document at all", but the function reads the `$self` field from the document (`document.try_at("$self", OPENAPI_HASH_SELF)` in frame.cc). Clarify that it reads nothing but the `$self` field, so the claim is accurate rather than overreaching.</comment>
<file context>
@@ -356,19 +356,23 @@ inline auto openapi_check_document(const JSON &document, OpenAPIWalk &walk)
+ // rather than of how far reading it got, which is why this is settled
+ // before anything else is read and before anything else is turned down.
+ // Every refusal below then names the document by the URI it answers to,
+ // and the public sourcemeta::core::openapi_base says what that is without
+ // reading the document at all
+ //
</file context>
| // and the public sourcemeta::core::openapi_base says what that is without | |
| // reading the document at all | |
| // and the public sourcemeta::core::openapi_base reports it by reading | |
| // nothing but the `$self` field |
Signed-off-by: Juan Cruz Viotti <[email protected]>
Signed-off-by: Juan Cruz Viotti [email protected]