Repository: mirumee/ariadne
Pull request #1232 (2025-02-19 11:48:46)

fix: websocket connection init timeout set to 0
In case of `connection_init_wait_timeout` set to 0, ws connection was closed before it was even accepted, so accepting connection was throwing an error. Moving `websocket.accept()` to the top fixes the issue. 

Fixes https://github.com/mirumee/ariadne/issues/1217


Patch:
diff --git a/README.md b/README.md
index e8bca8e..f2ac771 100644
--- a/README.md
+++ b/README.md
@@ -46,7 +46,7 @@ Ariadne can be installed with pip:
 pip install ariadne
 ```
 
-Ariadne requires Python 3.7 or higher.
+Ariadne requires Python 3.9 or higher.
 
 
 ## Quickstart
diff --git a/ariadne/asgi/handlers/graphql_transport_ws.py b/ariadne/asgi/handlers/graphql_transport_ws.py
index b116fbc..fa2737e 100644
--- a/ariadne/asgi/handlers/graphql_transport_ws.py
+++ b/ariadne/asgi/handlers/graphql_transport_ws.py
@@ -105,13 +105,14 @@ class GraphQLTransportWSHandler(GraphQLWebsocketHandler):
 
         `websocket`: the `WebSocket` instance from Starlette or FastAPI.
         """
+        await websocket.accept("graphql-transport-ws")
+
         client_context = ClientContext()
         timeout_handler = self.handle_connection_init_timeout(websocket, client_context)
         client_context.connection_init_timeout_task = asyncio.create_task(
             timeout_handler
         )
 
-        await websocket.accept("graphql-transport-ws")
         try:
             while WebSocketState.DISCONNECTED not in (
                 websocket.client_state,
diff --git a/ariadne/contrib/tracing/copy_args.py b/ariadne/contrib/tracing/copy_args.py
index df6a5db..e39328c 100644
--- a/ariadne/contrib/tracing/copy_args.py
+++ b/ariadne/contrib/tracing/copy_args.py
@@ -4,7 +4,7 @@ from typing import Any, Union
 from starlette.datastructures import UploadFile
 
 try:
-    from multipart.multipart import File
+    from python_multipart.multipart import File
 except ImportError:
 
     class File:  # type: ignore
diff --git a/ariadne/contrib/tracing/utils.py b/ariadne/contrib/tracing/utils.py
index 8b67c38..42fe05a 100644
--- a/ariadne/contrib/tracing/utils.py
+++ b/ariadne/contrib/tracing/utils.py
@@ -7,7 +7,7 @@ from starlette.datastructures import UploadFile
 from ...resolvers import is_default_resolver
 
 try:
-    from multipart.multipart import File
+    from python_multipart.multipart import File
 except ImportError:
 
     class File:  # type: ignore
diff --git a/ariadne/wsgi.py b/ariadne/wsgi.py
index 1a5f025..4fdded0 100644
--- a/ariadne/wsgi.py
+++ b/ariadne/wsgi.py
@@ -37,7 +37,7 @@ from .types import (
 from .utils import context_value_one_arg_deprecated
 
 try:
-    from multipart import parse_form
+    from python_multipart import parse_form
 except ImportError:
 
     def parse_form(*_args, **_kwargs):  # type: ignore
diff --git a/benchmark/results/Linux-CPython-3.12-64bit/0019_4aade40ddaf8b8eb921ffbe0d3b81118e6f30c5f_20240318_103121.json b/benchmark/results/Linux-CPython-3.12-64bit/0019_4aade40ddaf8b8eb921ffbe0d3b81118e6f30c5f_20240318_103121.json
deleted file mode 100644
index b08155f..0000000
--- a/benchmark/results/Linux-CPython-3.12-64bit/0019_4aade40ddaf8b8eb921ffbe0d3b81118e6f30c5f_20240318_103121.json
+++ /dev/null
@@ -1,310 +0,0 @@
-{
-    "machine_info": {
-        "node": "fv-az1567-380",
-        "processor": "x86_64",
-        "machine": "x86_64",
-        "python_compiler": "GCC 11.4.0",
-        "python_implementation": "CPython",
-        "python_implementation_version": "3.12.2",
-        "python_version": "3.12.2",
-        "python_build": [
-            "main",
-            "Feb  7 2024 16:26:19"
-        ],
-        "release": "6.5.0-1016-azure",
-        "system": "Linux",
-        "cpu": {
-            "python_version": "3.12.2.final.0 (64 bit)",
-            "cpuinfo_version": [
-                9,
-                0,
-                0
-            ],
-            "cpuinfo_version_string": "9.0.0",
-            "arch": "X86_64",
-            "bits": 64,
-            "count": 4,
-            "arch_string_raw": "x86_64",
-            "vendor_id_raw": "AuthenticAMD",
-            "brand_raw": "AMD EPYC 7763 64-Core Processor",
-            "hz_advertised_friendly": "3.1453 GHz",
-            "hz_actual_friendly": "3.1453 GHz",
-            "hz_advertised": [
-                3145319000,
-                0
-            ],
-            "hz_actual": [
-                3145319000,
-                0
-            ],
-            "stepping": 1,
-            "model": 1,
-            "family": 25,
-            "flags": [
-                "3dnowext",
-                "3dnowprefetch",
-                "abm",
-                "adx",
-                "aes",
-                "aperfmperf",
-                "apic",
-                "arat",
-                "avx",
-                "avx2",
-                "bmi1",
-                "bmi2",
-                "clflush",
-                "clflushopt",
-                "clwb",
-                "clzero",
-                "cmov",
-                "cmp_legacy",
-                "constant_tsc",
-                "cpuid",
-                "cr8_legacy",
-                "cx16",
-                "cx8",
-                "de",
-                "decodeassists",
-                "erms",
-                "extd_apicid",
-                "f16c",
-                "flushbyasid",
-                "fma",
-                "fpu",
-                "fsgsbase",
-                "fsrm",
-                "fxsr",
-                "fxsr_opt",
-                "ht",
-                "hypervisor",
-                "invpcid",
-                "invpcid_single",
-                "lahf_lm",
-                "lm",
-                "mca",
-                "mce",
-                "misalignsse",
-                "mmx",
-                "mmxext",
-                "movbe",
-                "msr",
-                "mtrr",
-                "nonstop_tsc",
-                "nopl",
-                "npt",
-                "nrip_save",
-                "nx",
-                "osvw",
-                "osxsave",
-                "pae",
-                "pat",
-                "pausefilter",
-                "pcid",
-                "pclmulqdq",
-                "pdpe1gb",
-                "pfthreshold",
-                "pge",
-                "pni",
-                "popcnt",
-                "pse",
-                "pse36",
-                "rdpid",
-                "rdpru",
-                "rdrand",
-                "rdrnd",
-                "rdseed",
-                "rdtscp",
-                "rep_good",
-                "sep",
-                "sha",
-                "sha_ni",
-                "smap",
-                "smep",
-                "sse",
-                "sse2",
-                "sse4_1",
-                "sse4_2",
-                "sse4a",
-                "ssse3",
-                "svm",
-                "syscall",
-                "topoext",
-                "tsc",
-                "tsc_reliable",
-                "tsc_scale",
-                "umip",
-                "v_vmsave_vmload",
-                "vaes",
-                "vmcb_clean",
-                "vme",
-                "vmmcall",
-                "vpclmulqdq",
-                "xgetbv1",
-                "xsave",
-                "xsavec",
-                "xsaveerptr",
-                "xsaveopt",
-                "xsaves"
-            ],
-            "l3_cache_size": 524288,
-            "l2_cache_size": 1048576,
-            "l1_data_cache_size": 65536,
-            "l1_instruction_cache_size": 65536,
-            "l2_cache_line_size": 512,
-            "l2_cache_associativity": 6
-        }
-    },
-    "commit_info": {
-        "id": "4aade40ddaf8b8eb921ffbe0d3b81118e6f30c5f",
-        "time": "2024-03-18T10:30:50+00:00",
-        "author_time": "2024-03-18T10:30:50+00:00",
-        "dirty": false,
-        "project": "ariadne",
-        "branch": "main"
-    },
-    "benchmarks": [
-        {
-            "group": null,
-            "name": "test_query_without_extensions",
-            "fullname": "benchmark/test_extensions.py::test_query_without_extensions",
-            "params": null,
-            "param": null,
-            "extra_info": {},
-            "options": {
-                "disable_gc": false,
-                "timer": "perf_counter",
-                "min_rounds": 5,
-                "max_time": 1.0,
-                "min_time": 5e-06,
-                "warmup": false
-            },
-            "stats": {
-                "min": 0.9448651990000201,
-                "max": 1.0247384350000175,
-                "mean": 0.9885387196000182,
-                "stddev": 0.0358902176627534,
-                "rounds": 5,
-                "median": 1.00761330200001,
-                "iqr": 0.061095485999999255,
-                "q1": 0.9527064595000212,
-                "q3": 1.0138019455000205,
-                "iqr_outliers": 0,
-                "stddev_outliers": 2,
-                "outliers": "2;0",
-                "ld15iqr": 0.9448651990000201,
-                "hd15iqr": 1.0247384350000175,
-                "ops": 1.0115941643688164,
-                "total": 4.942693598000091,
-                "iterations": 1
-            }
-        },
-        {
-            "group": null,
-            "name": "test_query_with_noop_extension",
-            "fullname": "benchmark/test_extensions.py::test_query_with_noop_extension",
-            "params": null,
-            "param": null,
-            "extra_info": {},
-            "options": {
-                "disable_gc": false,
-                "timer": "perf_counter",
-                "min_rounds": 5,
-                "max_time": 1.0,
-                "min_time": 5e-06,
-                "warmup": false
-            },
-            "stats": {
-                "min": 0.9678603140000064,
-                "max": 0.9961788709999837,
-                "mean": 0.9840577704000111,
-                "stddev": 0.011410524663438422,
-                "rounds": 5,
-                "median": 0.9880752790000145,
-                "iqr": 0.017438304749994415,
-                "q1": 0.9748511412500207,
-                "q3": 0.9922894460000151,
-                "iqr_outliers": 0,
-                "stddev_outliers": 2,
-                "outliers": "2;0",
-                "ld15iqr": 0.9678603140000064,
-                "hd15iqr": 0.9961788709999837,
-                "ops": 1.0162005017180125,
-                "total": 4.920288852000056,
-                "iterations": 1
-            }
-        },
-        {
-            "group": null,
-            "name": "test_query_with_open_telemetry_extension",
-            "fullname": "benchmark/test_extensions.py::test_query_with_open_telemetry_extension",
-            "params": null,
-            "param": null,
-            "extra_info": {},
-            "options": {
-                "disable_gc": false,
-                "timer": "perf_counter",
-                "min_rounds": 5,
-                "max_time": 1.0,
-                "min_time": 5e-06,
-                "warmup": false
-            },
-            "stats": {
-                "min": 1.1699740829999996,
-                "max": 1.2165208710000002,
-                "mean": 1.2028683144000012,
-                "stddev": 0.0193423774116443,
-                "rounds": 5,
-                "median": 1.210059976999986,
-                "iqr": 0.022441179750018136,
-                "q1": 1.1937612697499986,
-                "q3": 1.2162024495000168,
-                "iqr_outliers": 0,
-                "stddev_outliers": 1,
-                "outliers": "1;0",
-                "ld15iqr": 1.1699740829999996,
-                "hd15iqr": 1.2165208710000002,
-                "ops": 0.8313461981071525,
-                "total": 6.014341572000006,
-                "iterations": 1
-            }
-        },
-        {
-            "group": null,
-            "name": "test_query_with_open_tracing_extension",
-            "fullname": "benchmark/test_extensions.py::test_query_with_open_tracing_extension",
-            "params": null,
-            "param": null,
-            "extra_info": {},
-            "options": {
-                "disable_gc": false,
-                "timer": "perf_counter",
-                "min_rounds": 5,
-                "max_time": 1.0,
-                "min_time": 5e-06,
-                "warmup": false
-            },
-            "stats": {
-                "min": 1.071208936000005,
-                "max": 1.1659533410000051,
-                "mean": 1.138978906600005,
-                "stddev": 0.03964763464815498,
-                "rounds": 5,
-                "median": 1.1581534039999895,
-                "iqr": 0.04397646925000487,
-                "q1": 1.119999119500008,
-                "q3": 1.163975588750013,
-                "iqr_outliers": 0,
-                "stddev_outliers": 1,
-                "outliers": "1;0",
-                "ld15iqr": 1.071208936000005,
-                "hd15iqr": 1.1659533410000051,
-                "ops": 0.8779793850486008,
-                "total": 5.694894533000024,
-                "iterations": 1
-            }
-        }
-    ],
-    "datetime": "2024-03-18T10:31:55.138782",
-    "version": "4.0.0"
-}
\ No newline at end of file
diff --git a/benchmark/results/Linux-CPython-3.12-64bit/0025_429d11f4c2050cdf5b191fbcffe35f1c665e5b96_20240802_063656.json b/benchmark/results/Linux-CPython-3.12-64bit/0025_429d11f4c2050cdf5b191fbcffe35f1c665e5b96_20240802_063656.json
deleted file mode 100644
index 53107f0..0000000
--- a/benchmark/results/Linux-CPython-3.12-64bit/0025_429d11f4c2050cdf5b191fbcffe35f1c665e5b96_20240802_063656.json
+++ /dev/null
@@ -1,310 +0,0 @@
-{
-    "machine_info": {
-        "node": "fv-az568-955",
-        "processor": "x86_64",
-        "machine": "x86_64",
-        "python_compiler": "GCC 11.4.0",
-        "python_implementation": "CPython",
-        "python_implementation_version": "3.12.4",
-        "python_version": "3.12.4",
-        "python_build": [
-            "main",
-            "Jul 15 2024 21:50:45"
-        ],
-        "release": "6.5.0-1024-azure",
-        "system": "Linux",
-        "cpu": {
-            "python_version": "3.12.4.final.0 (64 bit)",
-            "cpuinfo_version": [
-                9,
-                0,
-                0
-            ],
-            "cpuinfo_version_string": "9.0.0",
-            "arch": "X86_64",
-            "bits": 64,
-            "count": 4,
-            "arch_string_raw": "x86_64",
-            "vendor_id_raw": "AuthenticAMD",
-            "brand_raw": "AMD EPYC 7763 64-Core Processor",
-            "hz_advertised_friendly": "2.5232 GHz",
-            "hz_actual_friendly": "2.5232 GHz",
-            "hz_advertised": [
-                2523199000,
-                0
-            ],
-            "hz_actual": [
-                2523199000,
-                0
-            ],
-            "stepping": 1,
-            "model": 1,
-            "family": 25,
-            "flags": [
-                "3dnowext",
-                "3dnowprefetch",
-                "abm",
-                "adx",
-                "aes",
-                "aperfmperf",
-                "apic",
-                "arat",
-                "avx",
-                "avx2",
-                "bmi1",
-                "bmi2",
-                "clflush",
-                "clflushopt",
-                "clwb",
-                "clzero",
-                "cmov",
-                "cmp_legacy",
-                "constant_tsc",
-                "cpuid",
-                "cr8_legacy",
-                "cx16",
-                "cx8",
-                "de",
-                "decodeassists",
-                "erms",
-                "extd_apicid",
-                "f16c",
-                "flushbyasid",
-                "fma",
-                "fpu",
-                "fsgsbase",
-                "fsrm",
-                "fxsr",
-                "fxsr_opt",
-                "ht",
-                "hypervisor",
-                "invpcid",
-                "invpcid_single",
-                "lahf_lm",
-                "lm",
-                "mca",
-                "mce",
-                "misalignsse",
-                "mmx",
-                "mmxext",
-                "movbe",
-                "msr",
-                "mtrr",
-                "nonstop_tsc",
-                "nopl",
-                "npt",
-                "nrip_save",
-                "nx",
-                "osvw",
-                "osxsave",
-                "pae",
-                "pat",
-                "pausefilter",
-                "pcid",
-                "pclmulqdq",
-                "pdpe1gb",
-                "pfthreshold",
-                "pge",
-                "pni",
-                "popcnt",
-                "pse",
-                "pse36",
-                "rdpid",
-                "rdpru",
-                "rdrand",
-                "rdrnd",
-                "rdseed",
-                "rdtscp",
-                "rep_good",
-                "sep",
-                "sha",
-                "sha_ni",
-                "smap",
-                "smep",
-                "sse",
-                "sse2",
-                "sse4_1",
-                "sse4_2",
-                "sse4a",
-                "ssse3",
-                "svm",
-                "syscall",
-                "topoext",
-                "tsc",
-                "tsc_reliable",
-                "tsc_scale",
-                "umip",
-                "v_vmsave_vmload",
-                "vaes",
-                "vmcb_clean",
-                "vme",
-                "vmmcall",
-                "vpclmulqdq",
-                "xgetbv1",
-                "xsave",
-                "xsavec",
-                "xsaveerptr",
-                "xsaveopt",
-                "xsaves"
-            ],
-            "l3_cache_size": 524288,
-            "l2_cache_size": 1048576,
-            "l1_data_cache_size": 65536,
-            "l1_instruction_cache_size": 65536,
-            "l2_cache_line_size": 512,
-            "l2_cache_associativity": 6
-        }
-    },
-    "commit_info": {
-        "id": "429d11f4c2050cdf5b191fbcffe35f1c665e5b96",
-        "time": "2024-08-02T06:36:28Z",
-        "author_time": "2024-08-02T06:36:28Z",
-        "dirty": false,
-        "project": "ariadne",
-        "branch": "main"
-    },
-    "benchmarks": [
-        {
-            "group": null,
-            "name": "test_query_without_extensions",
-            "fullname": "benchmark/test_extensions.py::test_query_without_extensions",
-            "params": null,
-            "param": null,
-            "extra_info": {},
-            "options": {
-                "disable_gc": false,
-                "timer": "perf_counter",
-                "min_rounds": 5,
-                "max_time": 1.0,
-                "min_time": 5e-06,
-                "warmup": false
-            },
-            "stats": {
-                "min": 1.0178533200000004,
-                "max": 1.1004742060000012,
-                "mean": 1.066283403,
-                "stddev": 0.03964747200059133,
-                "rounds": 5,
-                "median": 1.0880777339999952,
-                "iqr": 0.07118621125000146,
-                "q1": 1.0260772432500005,
-                "q3": 1.097263454500002,
-                "iqr_outliers": 0,
-                "stddev_outliers": 1,
-                "outliers": "1;0",
-                "ld15iqr": 1.0178533200000004,
-                "hd15iqr": 1.1004742060000012,
-                "ops": 0.9378369739100216,
-                "total": 5.3314170149999995,
-                "iterations": 1
-            }
-        },
-        {
-            "group": null,
-            "name": "test_query_with_noop_extension",
-            "fullname": "benchmark/test_extensions.py::test_query_with_noop_extension",
-            "params": null,
-            "param": null,
-            "extra_info": {},
-            "options": {
-                "disable_gc": false,
-                "timer": "perf_counter",
-                "min_rounds": 5,
-                "max_time": 1.0,
-                "min_time": 5e-06,
-                "warmup": false
-            },
-            "stats": {
-                "min": 1.0224032250000334,
-                "max": 1.0929182990000186,
-                "mean": 1.0534932762000095,
-                "stddev": 0.025578545073313478,
-                "rounds": 5,
-                "median": 1.054076710000004,
-                "iqr": 0.025567070749993093,
-                "q1": 1.038407210250007,
-                "q3": 1.0639742810000001,
-                "iqr_outliers": 0,
-                "stddev_outliers": 2,
-                "outliers": "2;0",
-                "ld15iqr": 1.0224032250000334,
-                "hd15iqr": 1.0929182990000186,
-                "ops": 0.9492229543287054,
-                "total": 5.267466381000048,
-                "iterations": 1
-            }
-        },
-        {
-            "group": null,
-            "name": "test_query_with_open_telemetry_extension",
-            "fullname": "benchmark/test_extensions.py::test_query_with_open_telemetry_extension",
-            "params": null,
-            "param": null,
-            "extra_info": {},
-            "options": {
-                "disable_gc": false,
-                "timer": "perf_counter",
-                "min_rounds": 5,
-                "max_time": 1.0,
-                "min_time": 5e-06,
-                "warmup": false
-            },
-            "stats": {
-                "min": 1.259171623000043,
-                "max": 1.2733041249999815,
-                "mean": 1.2634915954000234,
-                "stddev": 0.005796712538021701,
-                "rounds": 5,
-                "median": 1.261000976000048,
-                "iqr": 0.00667070925000246,
-                "q1": 1.2597170837500187,
-                "q3": 1.2663877930000211,
-                "iqr_outliers": 0,
-                "stddev_outliers": 1,
-                "outliers": "1;0",
-                "ld15iqr": 1.259171623000043,
-                "hd15iqr": 1.2733041249999815,
-                "ops": 0.7914575796472935,
-                "total": 6.317457977000117,
-                "iterations": 1
-            }
-        },
-        {
-            "group": null,
-            "name": "test_query_with_open_tracing_extension",
-            "fullname": "benchmark/test_extensions.py::test_query_with_open_tracing_extension",
-            "params": null,
-            "param": null,
-            "extra_info": {},
-            "options": {
-                "disable_gc": false,
-                "timer": "perf_counter",
-                "min_rounds": 5,
-                "max_time": 1.0,
-                "min_time": 5e-06,
-                "warmup": false
-            },
-            "stats": {
-                "min": 1.143722774999958,
-                "max": 1.2412260330000322,
-                "mean": 1.205642441000009,
-                "stddev": 0.03966309598990536,
-                "rounds": 5,
-                "median": 1.217748724000046,
-                "iqr": 0.05697454725005002,
-                "q1": 1.1791993297499772,
-                "q3": 1.2361738770000272,
-                "iqr_outliers": 0,
-                "stddev_outliers": 1,
-                "outliers": "1;0",
-                "ld15iqr": 1.143722774999958,
-                "hd15iqr": 1.2412260330000322,
-                "ops": 0.8294333095727446,
-                "total": 6.028212205000045,
-                "iterations": 1
-            }
-        }
-    ],
-    "datetime": "2024-08-02T06:37:31.789289",
-    "version": "4.0.0"
-}
\ No newline at end of file
diff --git a/benchmark/results/Linux-CPython-3.12-64bit/0026_28d6d4bd63e4d366a685ffd3f60ad5d7689d2dba_20241119_163950.json b/benchmark/results/Linux-CPython-3.12-64bit/0050_abf552bcc06737d8e5990f4c00f955de3688262b_20250219_143736.json
similarity index 71%
rename from benchmark/results/Linux-CPython-3.12-64bit/0026_28d6d4bd63e4d366a685ffd3f60ad5d7689d2dba_20241119_163950.json
rename to benchmark/results/Linux-CPython-3.12-64bit/0050_abf552bcc06737d8e5990f4c00f955de3688262b_20250219_143736.json
index bb8a643..5d494c0 100644
--- a/benchmark/results/Linux-CPython-3.12-64bit/0026_28d6d4bd63e4d366a685ffd3f60ad5d7689d2dba_20241119_163950.json
+++ b/benchmark/results/Linux-CPython-3.12-64bit/0050_abf552bcc06737d8e5990f4c00f955de3688262b_20250219_143736.json
@@ -1,20 +1,20 @@
 {
     "machine_info": {
-        "node": "fv-az693-321",
+        "node": "fv-az1334-412",
         "processor": "x86_64",
         "machine": "x86_64",
-        "python_compiler": "GCC 11.4.0",
+        "python_compiler": "GCC 13.3.0",
         "python_implementation": "CPython",
-        "python_implementation_version": "3.12.7",
-        "python_version": "3.12.7",
+        "python_implementation_version": "3.12.3",
+        "python_version": "3.12.3",
         "python_build": [
             "main",
-            "Oct  1 2024 15:17:55"
+            "Jan 17 2025 18:03:48"
         ],
-        "release": "6.5.0-1025-azure",
+        "release": "6.8.0-1021-azure",
         "system": "Linux",
         "cpu": {
-            "python_version": "3.12.7.final.0 (64 bit)",
+            "python_version": "3.12.3.final.0 (64 bit)",
             "cpuinfo_version": [
                 9,
                 0,
@@ -27,14 +27,14 @@
             "arch_string_raw": "x86_64",
             "vendor_id_raw": "AuthenticAMD",
             "brand_raw": "AMD EPYC 7763 64-Core Processor",
-            "hz_advertised_friendly": "3.2289 GHz",
-            "hz_actual_friendly": "3.2289 GHz",
+            "hz_advertised_friendly": "3.2421 GHz",
+            "hz_actual_friendly": "3.2421 GHz",
             "hz_advertised": [
-                3228908000,
+                3242142000,
                 0
             ],
             "hz_actual": [
-                3228908000,
+                3242142000,
                 0
             ],
             "stepping": 1,
@@ -79,7 +79,6 @@
                 "ht",
                 "hypervisor",
                 "invpcid",
-                "invpcid_single",
                 "lahf_lm",
                 "lm",
                 "mca",
@@ -134,6 +133,7 @@
                 "tsc_reliable",
                 "tsc_scale",
                 "umip",
+                "user_shstk",
                 "v_vmsave_vmload",
                 "vaes",
                 "vmcb_clean",
@@ -156,9 +156,9 @@
         }
     },
     "commit_info": {
-        "id": "28d6d4bd63e4d366a685ffd3f60ad5d7689d2dba",
-        "time": "2024-11-19T16:39:22Z",
-        "author_time": "2024-11-19T16:39:22Z",
+        "id": "abf552bcc06737d8e5990f4c00f955de3688262b",
+        "time": "2025-02-19T15:37:16+01:00",
+        "author_time": "2025-02-18T11:52:35+01:00",
         "dirty": false,
         "project": "ariadne",
         "branch": "main"
@@ -180,22 +180,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 0.9730524600000194,
-                "max": 1.0778625909999846,
-                "mean": 1.0209843120000073,
-                "stddev": 0.038960955167050164,
+                "min": 0.8723187399999972,
+                "max": 0.9762908529999947,
+                "mean": 0.9124786073999985,
+                "stddev": 0.04443536672234158,
                 "rounds": 5,
-                "median": 1.0091272889999914,
-                "iqr": 0.047266674250010965,
-                "q1": 0.9995607517500105,
-                "q3": 1.0468274260000214,
+                "median": 0.8869533219999965,
+                "iqr": 0.06788434575000579,
+                "q1": 0.8821953219999976,
+                "q3": 0.9500796677500034,
                 "iqr_outliers": 0,
-                "stddev_outliers": 2,
-                "outliers": "2;0",
-                "ld15iqr": 0.9730524600000194,
-                "hd15iqr": 1.0778625909999846,
-                "ops": 0.9794469790050925,
-                "total": 5.104921560000037,
+                "stddev_outliers": 1,
+                "outliers": "1;0",
+                "ld15iqr": 0.8723187399999972,
+                "hd15iqr": 0.9762908529999947,
+                "ops": 1.0959161035559875,
+                "total": 4.5623930369999925,
                 "iterations": 1
             }
         },
@@ -215,22 +215,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.041115029000025,
-                "max": 1.1344830200000047,
-                "mean": 1.0807006030000026,
-                "stddev": 0.04019174197338685,
+                "min": 0.868426805999988,
+                "max": 0.9816613950000033,
+                "mean": 0.9189322381999971,
+                "stddev": 0.04900803911662936,
                 "rounds": 5,
-                "median": 1.077855618000001,
-                "iqr": 0.06993157474994405,
-                "q1": 1.0432524742500249,
-                "q3": 1.113184048999969,
+                "median": 0.9215846509999892,
+                "iqr": 0.08643941250000964,
+                "q1": 0.8716619459999961,
+                "q3": 0.9581013585000058,
                 "iqr_outliers": 0,
-                "stddev_outliers": 1,
-                "outliers": "1;0",
-                "ld15iqr": 1.041115029000025,
-                "hd15iqr": 1.1344830200000047,
-                "ops": 0.9253256611720403,
-                "total": 5.4035030150000125,
+                "stddev_outliers": 2,
+                "outliers": "2;0",
+                "ld15iqr": 0.868426805999988,
+                "hd15iqr": 0.9816613950000033,
+                "ops": 1.088219520907002,
+                "total": 4.594661190999986,
                 "iterations": 1
             }
         },
@@ -250,22 +250,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.2446947700000237,
-                "max": 1.277398101000017,
-                "mean": 1.2600915836000126,
-                "stddev": 0.013593212481409793,
+                "min": 1.0776034110000126,
+                "max": 1.1623611550000135,
+                "mean": 1.1235994676000076,
+                "stddev": 0.03251626092742308,
                 "rounds": 5,
-                "median": 1.2646587550000277,
-                "iqr": 0.021621150249998777,
-                "q1": 1.2470908932500038,
-                "q3": 1.2687120435000026,
+                "median": 1.1314551410000036,
+                "iqr": 0.046046446749990366,
+                "q1": 1.099438959000011,
+                "q3": 1.1454854057500015,
                 "iqr_outliers": 0,
                 "stddev_outliers": 2,
                 "outliers": "2;0",
-                "ld15iqr": 1.2446947700000237,
-                "hd15iqr": 1.277398101000017,
-                "ops": 0.7935931110205933,
-                "total": 6.300457918000063,
+                "ld15iqr": 1.0776034110000126,
+                "hd15iqr": 1.1623611550000135,
+                "ops": 0.8899968617251001,
+                "total": 5.617997338000038,
                 "iterations": 1
             }
         },
@@ -285,26 +285,26 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.083641924999995,
-                "max": 1.1167823360000284,
-                "mean": 1.10227213820001,
-                "stddev": 0.012241865025813944,
+                "min": 0.9656207139999822,
+                "max": 1.0857747299999971,
+                "mean": 1.0256868030000021,
+                "stddev": 0.04838238714233454,
                 "rounds": 5,
-                "median": 1.104337982000004,
-                "iqr": 0.014599802750026925,
-                "q1": 1.0952275492499979,
-                "q3": 1.1098273520000248,
+                "median": 1.0117306250000127,
+                "iqr": 0.07569705650000458,
+                "q1": 0.9930663820000021,
+                "q3": 1.0687634385000067,
                 "iqr_outliers": 0,
                 "stddev_outliers": 2,
                 "outliers": "2;0",
-                "ld15iqr": 1.083641924999995,
-                "hd15iqr": 1.1167823360000284,
-                "ops": 0.9072169796770709,
-                "total": 5.51136069100005,
+                "ld15iqr": 0.9656207139999822,
+                "hd15iqr": 1.0857747299999971,
+                "ops": 0.9749564848403318,
+                "total": 5.1284340150000105,
                 "iterations": 1
             }
         }
     ],
-    "datetime": "2024-11-19T16:40:24.960069+00:00",
+    "datetime": "2025-02-19T14:38:07.078862+00:00",
     "version": "5.1.0"
 }
\ No newline at end of file
diff --git a/benchmark/results/Linux-CPython-3.12-64bit/0051_3d5c05872c7eb7eb3c49b086ee9a40f63c6a5648_20250219_143826.json b/benchmark/results/Linux-CPython-3.12-64bit/0051_3d5c05872c7eb7eb3c49b086ee9a40f63c6a5648_20250219_143826.json
new file mode 100644
index 0000000..896091e
--- /dev/null
+++ b/benchmark/results/Linux-CPython-3.12-64bit/0051_3d5c05872c7eb7eb3c49b086ee9a40f63c6a5648_20250219_143826.json
@@ -0,0 +1,310 @@
+{
+    "machine_info": {
+        "node": "fv-az1043-579",
+        "processor": "x86_64",
+        "machine": "x86_64",
+        "python_compiler": "GCC 13.3.0",
+        "python_implementation": "CPython",
+        "python_implementation_version": "3.12.3",
+        "python_version": "3.12.3",
+        "python_build": [
+            "main",
+            "Jan 17 2025 18:03:48"
+        ],
+        "release": "6.8.0-1021-azure",
+        "system": "Linux",
+        "cpu": {
+            "python_version": "3.12.3.final.0 (64 bit)",
+            "cpuinfo_version": [
+                9,
+                0,
+                0
+            ],
+            "cpuinfo_version_string": "9.0.0",
+            "arch": "X86_64",
+            "bits": 64,
+            "count": 4,
+            "arch_string_raw": "x86_64",
+            "vendor_id_raw": "AuthenticAMD",
+            "brand_raw": "AMD EPYC 7763 64-Core Processor",
+            "hz_advertised_friendly": "2.4454 GHz",
+            "hz_actual_friendly": "2.4454 GHz",
+            "hz_advertised": [
+                2445427000,
+                0
+            ],
+            "hz_actual": [
+                2445427000,
+                0
+            ],
+            "stepping": 1,
+            "model": 1,
+            "family": 25,
+            "flags": [
+                "3dnowext",
+                "3dnowprefetch",
+                "abm",
+                "adx",
+                "aes",
+                "aperfmperf",
+                "apic",
+                "arat",
+                "avx",
+                "avx2",
+                "bmi1",
+                "bmi2",
+                "clflush",
+                "clflushopt",
+                "clwb",
+                "clzero",
+                "cmov",
+                "cmp_legacy",
+                "constant_tsc",
+                "cpuid",
+                "cr8_legacy",
+                "cx16",
+                "cx8",
+                "de",
+                "decodeassists",
+                "erms",
+                "extd_apicid",
+                "f16c",
+                "flushbyasid",
+                "fma",
+                "fpu",
+                "fsgsbase",
+                "fsrm",
+                "fxsr",
+                "fxsr_opt",
+                "ht",
+                "hypervisor",
+                "invpcid",
+                "lahf_lm",
+                "lm",
+                "mca",
+                "mce",
+                "misalignsse",
+                "mmx",
+                "mmxext",
+                "movbe",
+                "msr",
+                "mtrr",
+                "nonstop_tsc",
+                "nopl",
+                "npt",
+                "nrip_save",
+                "nx",
+                "osvw",
+                "osxsave",
+                "pae",
+                "pat",
+                "pausefilter",
+                "pcid",
+                "pclmulqdq",
+                "pdpe1gb",
+                "pfthreshold",
+                "pge",
+                "pni",
+                "popcnt",
+                "pse",
+                "pse36",
+                "rdpid",
+                "rdpru",
+                "rdrand",
+                "rdrnd",
+                "rdseed",
+                "rdtscp",
+                "rep_good",
+                "sep",
+                "sha",
+                "sha_ni",
+                "smap",
+                "smep",
+                "sse",
+                "sse2",
+                "sse4_1",
+                "sse4_2",
+                "sse4a",
+                "ssse3",
+                "svm",
+                "syscall",
+                "topoext",
+                "tsc",
+                "tsc_reliable",
+                "tsc_scale",
+                "umip",
+                "user_shstk",
+                "v_vmsave_vmload",
+                "vaes",
+                "vmcb_clean",
+                "vme",
+                "vmmcall",
+                "vpclmulqdq",
+                "xgetbv1",
+                "xsave",
+                "xsavec",
+                "xsaveerptr",
+                "xsaveopt",
+                "xsaves"
+            ],
+            "l3_cache_size": 524288,
+            "l2_cache_size": 1048576,
+            "l1_data_cache_size": 65536,
+            "l1_instruction_cache_size": 65536,
+            "l2_cache_line_size": 512,
+            "l2_cache_associativity": 6
+        }
+    },
+    "commit_info": {
+        "id": "3d5c05872c7eb7eb3c49b086ee9a40f63c6a5648",
+        "time": "2025-02-19T14:38:07Z",
+        "author_time": "2025-02-19T14:38:07Z",
+        "dirty": false,
+        "project": "ariadne",
+        "branch": "main"
+    },
+    "benchmarks": [
+        {
+            "group": null,
+            "name": "test_query_without_extensions",
+            "fullname": "benchmark/test_extensions.py::test_query_without_extensions",
+            "params": null,
+            "param": null,
+            "extra_info": {},
+            "options": {
+                "disable_gc": false,
+                "timer": "perf_counter",
+                "min_rounds": 5,
+                "max_time": 1.0,
+                "min_time": 5e-06,
+                "warmup": false
+            },
+            "stats": {
+                "min": 0.8150985279999929,
+                "max": 0.9075018429999773,
+                "mean": 0.8549304741999947,
+                "stddev": 0.03785792153096459,
+                "rounds": 5,
+                "median": 0.8433342229999994,
+                "iqr": 0.06056225399999704,
+                "q1": 0.8258130857499992,
+                "q3": 0.8863753397499963,
+                "iqr_outliers": 0,
+                "stddev_outliers": 2,
+                "outliers": "2;0",
+                "ld15iqr": 0.8150985279999929,
+                "hd15iqr": 0.9075018429999773,
+                "ops": 1.1696857582901754,
+                "total": 4.2746523709999735,
+                "iterations": 1
+            }
+        },
+        {
+            "group": null,
+            "name": "test_query_with_noop_extension",
+            "fullname": "benchmark/test_extensions.py::test_query_with_noop_extension",
+            "params": null,
+            "param": null,
+            "extra_info": {},
+            "options": {
+                "disable_gc": false,
+                "timer": "perf_counter",
+                "min_rounds": 5,
+                "max_time": 1.0,
+                "min_time": 5e-06,
+                "warmup": false
+            },
+            "stats": {
+                "min": 0.8529820930000085,
+                "max": 0.9745329970000114,
+                "mean": 0.8867472748000068,
+                "stddev": 0.04957041458437912,
+                "rounds": 5,
+                "median": 0.8675370919999921,
+                "iqr": 0.03330634649999098,
+                "q1": 0.8637927850000153,
+                "q3": 0.8970991315000063,
+                "iqr_outliers": 1,
+                "stddev_outliers": 1,
+                "outliers": "1;1",
+                "ld15iqr": 0.8529820930000085,
+                "hd15iqr": 0.9745329970000114,
+                "ops": 1.1277170265062677,
+                "total": 4.433736374000034,
+                "iterations": 1
+            }
+        },
+        {
+            "group": null,
+            "name": "test_query_with_open_telemetry_extension",
+            "fullname": "benchmark/test_extensions.py::test_query_with_open_telemetry_extension",
+            "params": null,
+            "param": null,
+            "extra_info": {},
+            "options": {
+                "disable_gc": false,
+                "timer": "perf_counter",
+                "min_rounds": 5,
+                "max_time": 1.0,
+                "min_time": 5e-06,
+                "warmup": false
+            },
+            "stats": {
+                "min": 1.0028909290000172,
+                "max": 1.0369063390000122,
+                "mean": 1.0159584602000051,
+                "stddev": 0.015357936900485489,
+                "rounds": 5,
+                "median": 1.0082536399999924,
+                "iqr": 0.026077274250027926,
+                "q1": 1.0038390437499913,
+                "q3": 1.0299163180000193,
+                "iqr_outliers": 0,
+                "stddev_outliers": 1,
+                "outliers": "1;0",
+                "ld15iqr": 1.0028909290000172,
+                "hd15iqr": 1.0369063390000122,
+                "ops": 0.9842922119110425,
+                "total": 5.079792301000026,
+                "iterations": 1
+            }
+        },
+        {
+            "group": null,
+            "name": "test_query_with_open_tracing_extension",
+            "fullname": "benchmark/test_extensions.py::test_query_with_open_tracing_extension",
+            "params": null,
+            "param": null,
+            "extra_info": {},
+            "options": {
+                "disable_gc": false,
+                "timer": "perf_counter",
+                "min_rounds": 5,
+                "max_time": 1.0,
+                "min_time": 5e-06,
+                "warmup": false
+            },
+            "stats": {
+                "min": 0.8804365409999946,
+                "max": 0.9575635730000158,
+                "mean": 0.9174974358000043,
+                "stddev": 0.02820732375529773,
+                "rounds": 5,
+                "median": 0.9113091110000084,
+                "iqr": 0.03271684400000652,
+                "q1": 0.902708324999999,
+                "q3": 0.9354251690000055,
+                "iqr_outliers": 0,
+                "stddev_outliers": 2,
+                "outliers": "2;0",
+                "ld15iqr": 0.8804365409999946,
+                "hd15iqr": 0.9575635730000158,
+                "ops": 1.0899213022083907,
+                "total": 4.587487179000021,
+                "iterations": 1
+            }
+        }
+    ],
+    "datetime": "2025-02-19T14:38:54.791733+00:00",
+    "version": "5.1.0"
+}
\ No newline at end of file
diff --git a/benchmark/results/Linux-CPython-3.12-64bit/0023_a64ab498e11ec6850a19a3518835d7bbfe41cc85_20240613_081131.json b/benchmark/results/Linux-CPython-3.12-64bit/0052_25a717d72e8f0433f4731585faa6fc03f52d68cb_20250219_143909.json
similarity index 72%
rename from benchmark/results/Linux-CPython-3.12-64bit/0023_a64ab498e11ec6850a19a3518835d7bbfe41cc85_20240613_081131.json
rename to benchmark/results/Linux-CPython-3.12-64bit/0052_25a717d72e8f0433f4731585faa6fc03f52d68cb_20250219_143909.json
index 29bcfef..55deb08 100644
--- a/benchmark/results/Linux-CPython-3.12-64bit/0023_a64ab498e11ec6850a19a3518835d7bbfe41cc85_20240613_081131.json
+++ b/benchmark/results/Linux-CPython-3.12-64bit/0052_25a717d72e8f0433f4731585faa6fc03f52d68cb_20250219_143909.json
@@ -1,17 +1,17 @@
 {
     "machine_info": {
-        "node": "fv-az738-976",
+        "node": "fv-az1057-468",
         "processor": "x86_64",
         "machine": "x86_64",
-        "python_compiler": "GCC 11.4.0",
+        "python_compiler": "GCC 13.3.0",
         "python_implementation": "CPython",
         "python_implementation_version": "3.12.3",
         "python_version": "3.12.3",
         "python_build": [
             "main",
-            "May  9 2024 14:51:07"
+            "Jan 17 2025 18:03:48"
         ],
-        "release": "6.5.0-1021-azure",
+        "release": "6.8.0-1021-azure",
         "system": "Linux",
         "cpu": {
             "python_version": "3.12.3.final.0 (64 bit)",
@@ -27,14 +27,14 @@
             "arch_string_raw": "x86_64",
             "vendor_id_raw": "AuthenticAMD",
             "brand_raw": "AMD EPYC 7763 64-Core Processor",
-            "hz_advertised_friendly": "3.1689 GHz",
-            "hz_actual_friendly": "3.1689 GHz",
+            "hz_advertised_friendly": "3.1922 GHz",
+            "hz_actual_friendly": "3.1922 GHz",
             "hz_advertised": [
-                3168910000,
+                3192233000,
                 0
             ],
             "hz_actual": [
-                3168910000,
+                3192233000,
                 0
             ],
             "stepping": 1,
@@ -79,7 +79,6 @@
                 "ht",
                 "hypervisor",
                 "invpcid",
-                "invpcid_single",
                 "lahf_lm",
                 "lm",
                 "mca",
@@ -134,6 +133,7 @@
                 "tsc_reliable",
                 "tsc_scale",
                 "umip",
+                "user_shstk",
                 "v_vmsave_vmload",
                 "vaes",
                 "vmcb_clean",
@@ -156,9 +156,9 @@
         }
     },
     "commit_info": {
-        "id": "a64ab498e11ec6850a19a3518835d7bbfe41cc85",
-        "time": "2024-06-13T08:11:02Z",
-        "author_time": "2024-06-13T08:11:02Z",
+        "id": "25a717d72e8f0433f4731585faa6fc03f52d68cb",
+        "time": "2025-02-19T14:38:54Z",
+        "author_time": "2025-02-19T14:38:54Z",
         "dirty": false,
         "project": "ariadne",
         "branch": "main"
@@ -180,22 +180,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.000012378000008,
-                "max": 1.0505692670000144,
-                "mean": 1.0317595532000041,
-                "stddev": 0.023623671450152817,
+                "min": 0.7980496909999886,
+                "max": 0.9389960329999951,
+                "mean": 0.8494653379999931,
+                "stddev": 0.0557360247936433,
                 "rounds": 5,
-                "median": 1.0461272329999929,
-                "iqr": 0.03995343474998947,
-                "q1": 1.00962932125001,
-                "q3": 1.0495827559999995,
+                "median": 0.8279780419999838,
+                "iqr": 0.07146645750000857,
+                "q1": 0.812261083249993,
+                "q3": 0.8837275407500016,
                 "iqr_outliers": 0,
                 "stddev_outliers": 1,
                 "outliers": "1;0",
-                "ld15iqr": 1.000012378000008,
-                "hd15iqr": 1.0505692670000144,
-                "ops": 0.9692180672313604,
-                "total": 5.158797766000021,
+                "ld15iqr": 0.7980496909999886,
+                "hd15iqr": 0.9389960329999951,
+                "ops": 1.1772110706181729,
+                "total": 4.247326689999966,
                 "iterations": 1
             }
         },
@@ -215,22 +215,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.0041342590000113,
-                "max": 1.0613129520000086,
-                "mean": 1.0370842526000104,
-                "stddev": 0.021030589814302746,
+                "min": 0.8119372779999878,
+                "max": 0.8907284690000097,
+                "mean": 0.8479945073999999,
+                "stddev": 0.032072208385187845,
                 "rounds": 5,
-                "median": 1.0433812980000141,
-                "iqr": 0.022075872250013617,
-                "q1": 1.0258652480000023,
-                "q3": 1.047941120250016,
+                "median": 0.8550387239999964,
+                "iqr": 0.05051974524999281,
+                "q1": 0.8184238705000055,
+                "q3": 0.8689436157499983,
                 "iqr_outliers": 0,
                 "stddev_outliers": 2,
                 "outliers": "2;0",
-                "ld15iqr": 1.0041342590000113,
-                "hd15iqr": 1.0613129520000086,
-                "ops": 0.9642418130378138,
-                "total": 5.185421263000052,
+                "ld15iqr": 0.8119372779999878,
+                "hd15iqr": 0.8907284690000097,
+                "ops": 1.1792529211846638,
+                "total": 4.239972537,
                 "iterations": 1
             }
         },
@@ -250,22 +250,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.2552358789999971,
-                "max": 1.3070854380000014,
-                "mean": 1.2815319208000004,
-                "stddev": 0.018605066988958394,
+                "min": 0.9859326119999992,
+                "max": 1.0060795770000084,
+                "mean": 0.9951772061999975,
+                "stddev": 0.0075847016388972,
                 "rounds": 5,
-                "median": 1.2801507089999973,
-                "iqr": 0.01932344575001821,
-                "q1": 1.2725737834999933,
-                "q3": 1.2918972292500115,
+                "median": 0.9942549069999984,
+                "iqr": 0.010304441999991809,
+                "q1": 0.9899564032499981,
+                "q3": 1.00026084524999,
                 "iqr_outliers": 0,
                 "stddev_outliers": 2,
                 "outliers": "2;0",
-                "ld15iqr": 1.2552358789999971,
-                "hd15iqr": 1.3070854380000014,
-                "ops": 0.7803161074409655,
-                "total": 6.407659604000003,
+                "ld15iqr": 0.9859326119999992,
+                "hd15iqr": 1.0060795770000084,
+                "ops": 1.0048461658586594,
+                "total": 4.9758860309999875,
                 "iterations": 1
             }
         },
@@ -285,26 +285,26 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.1453549940000016,
-                "max": 1.2469306280000012,
-                "mean": 1.2130210024000008,
-                "stddev": 0.044332615299710956,
+                "min": 0.8900913999999887,
+                "max": 0.9358886030000235,
+                "mean": 0.9038391028000035,
+                "stddev": 0.019052656650290024,
                 "rounds": 5,
-                "median": 1.2391514339999787,
-                "iqr": 0.06537804950000492,
-                "q1": 1.1789721615000062,
-                "q3": 1.244350211000011,
+                "median": 0.8955778370000189,
+                "iqr": 0.02293142875002019,
+                "q1": 0.8908959137499863,
+                "q3": 0.9138273425000065,
                 "iqr_outliers": 0,
                 "stddev_outliers": 1,
                 "outliers": "1;0",
-                "ld15iqr": 1.1453549940000016,
-                "hd15iqr": 1.2469306280000012,
-                "ops": 0.8243880345199861,
-                "total": 6.065105012000004,
+                "ld15iqr": 0.8900913999999887,
+                "hd15iqr": 0.9358886030000235,
+                "ops": 1.1063916098585462,
+                "total": 4.5191955140000175,
                 "iterations": 1
             }
         }
     ],
-    "datetime": "2024-06-13T08:12:06.346923",
-    "version": "4.0.0"
+    "datetime": "2025-02-19T14:39:37.945687+00:00",
+    "version": "5.1.0"
 }
\ No newline at end of file
diff --git a/benchmark/results/Linux-CPython-3.12-64bit/0027_9426eda87d296fbf400f14d5aa7734dfe0801bee_20241119_165040.json b/benchmark/results/Linux-CPython-3.12-64bit/0053_9bcb898b6f4acd4de0bd4e9dc50576216cba8950_20250219_143957.json
similarity index 72%
rename from benchmark/results/Linux-CPython-3.12-64bit/0027_9426eda87d296fbf400f14d5aa7734dfe0801bee_20241119_165040.json
rename to benchmark/results/Linux-CPython-3.12-64bit/0053_9bcb898b6f4acd4de0bd4e9dc50576216cba8950_20250219_143957.json
index 0364dae..d5258c1 100644
--- a/benchmark/results/Linux-CPython-3.12-64bit/0027_9426eda87d296fbf400f14d5aa7734dfe0801bee_20241119_165040.json
+++ b/benchmark/results/Linux-CPython-3.12-64bit/0053_9bcb898b6f4acd4de0bd4e9dc50576216cba8950_20250219_143957.json
@@ -1,20 +1,20 @@
 {
     "machine_info": {
-        "node": "fv-az1110-954",
+        "node": "fv-az1696-950",
         "processor": "x86_64",
         "machine": "x86_64",
-        "python_compiler": "GCC 11.4.0",
+        "python_compiler": "GCC 13.3.0",
         "python_implementation": "CPython",
-        "python_implementation_version": "3.12.7",
-        "python_version": "3.12.7",
+        "python_implementation_version": "3.12.9",
+        "python_version": "3.12.9",
         "python_build": [
             "main",
-            "Oct  1 2024 15:17:55"
+            "Feb  5 2025 03:22:31"
         ],
-        "release": "6.5.0-1025-azure",
+        "release": "6.8.0-1021-azure",
         "system": "Linux",
         "cpu": {
-            "python_version": "3.12.7.final.0 (64 bit)",
+            "python_version": "3.12.9.final.0 (64 bit)",
             "cpuinfo_version": [
                 9,
                 0,
@@ -79,7 +79,6 @@
                 "ht",
                 "hypervisor",
                 "invpcid",
-                "invpcid_single",
                 "lahf_lm",
                 "lm",
                 "mca",
@@ -134,6 +133,7 @@
                 "tsc_reliable",
                 "tsc_scale",
                 "umip",
+                "user_shstk",
                 "v_vmsave_vmload",
                 "vaes",
                 "vmcb_clean",
@@ -156,9 +156,9 @@
         }
     },
     "commit_info": {
-        "id": "9426eda87d296fbf400f14d5aa7734dfe0801bee",
-        "time": "2024-11-19T16:50:12Z",
-        "author_time": "2024-11-19T16:50:12Z",
+        "id": "9bcb898b6f4acd4de0bd4e9dc50576216cba8950",
+        "time": "2025-02-19T14:39:38Z",
+        "author_time": "2025-02-19T14:39:38Z",
         "dirty": false,
         "project": "ariadne",
         "branch": "main"
@@ -180,22 +180,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 0.9964549580000153,
-                "max": 1.0662081760000035,
-                "mean": 1.0292846706000034,
-                "stddev": 0.025350409236735347,
+                "min": 1.0133582640000043,
+                "max": 1.1192232109999907,
+                "mean": 1.0582213051999987,
+                "stddev": 0.04837654910222002,
                 "rounds": 5,
-                "median": 1.0240859870000065,
-                "iqr": 0.028139992999996366,
-                "q1": 1.0161407322500011,
-                "q3": 1.0442807252499975,
+                "median": 1.042938547999995,
+                "iqr": 0.08825192599997678,
+                "q1": 1.015791660000012,
+                "q3": 1.1040435859999889,
                 "iqr_outliers": 0,
-                "stddev_outliers": 2,
-                "outliers": "2;0",
-                "ld15iqr": 0.9964549580000153,
-                "hd15iqr": 1.0662081760000035,
-                "ops": 0.9715485215737912,
-                "total": 5.146423353000017,
+                "stddev_outliers": 1,
+                "outliers": "1;0",
+                "ld15iqr": 1.0133582640000043,
+                "hd15iqr": 1.1192232109999907,
+                "ops": 0.9449819192697173,
+                "total": 5.291106525999993,
                 "iterations": 1
             }
         },
@@ -215,22 +215,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.018320813999992,
-                "max": 1.0724990699999921,
-                "mean": 1.0489004077999937,
-                "stddev": 0.02777580777385238,
+                "min": 1.019800279000009,
+                "max": 1.1131265319999954,
+                "mean": 1.0692349737999962,
+                "stddev": 0.038887439693559706,
                 "rounds": 5,
-                "median": 1.067180909000001,
-                "iqr": 0.050224957999979836,
-                "q1": 1.0186779737500018,
-                "q3": 1.0689029317499816,
+                "median": 1.074357778999996,
+                "iqr": 0.06644635499998941,
+                "q1": 1.0354765284999985,
+                "q3": 1.101922883499988,
                 "iqr_outliers": 0,
                 "stddev_outliers": 2,
                 "outliers": "2;0",
-                "ld15iqr": 1.018320813999992,
-                "hd15iqr": 1.0724990699999921,
-                "ops": 0.9533793604842242,
-                "total": 5.244502038999968,
+                "ld15iqr": 1.019800279000009,
+                "hd15iqr": 1.1131265319999954,
+                "ops": 0.9352481208560367,
+                "total": 5.346174868999981,
                 "iterations": 1
             }
         },
@@ -250,22 +250,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.2328291309999884,
-                "max": 1.27465817800001,
-                "mean": 1.252999602999995,
-                "stddev": 0.01604504335399034,
+                "min": 1.2517692700000111,
+                "max": 1.2908967930000017,
+                "mean": 1.268230178400006,
+                "stddev": 0.01501900381435255,
                 "rounds": 5,
-                "median": 1.2574878069999897,
-                "iqr": 0.021872535500008894,
-                "q1": 1.2400082329999904,
-                "q3": 1.2618807684999993,
+                "median": 1.2647538840000152,
+                "iqr": 0.0204801260000238,
+                "q1": 1.2577422992499905,
+                "q3": 1.2782224252500143,
                 "iqr_outliers": 0,
                 "stddev_outliers": 2,
                 "outliers": "2;0",
-                "ld15iqr": 1.2328291309999884,
-                "hd15iqr": 1.27465817800001,
-                "ops": 0.7980848498321543,
-                "total": 6.264998014999975,
+                "ld15iqr": 1.2517692700000111,
+                "hd15iqr": 1.2908967930000017,
+                "ops": 0.7885003976656634,
+                "total": 6.34115089200003,
                 "iterations": 1
             }
         },
@@ -285,26 +285,26 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.109153111000012,
-                "max": 1.1464530320000108,
-                "mean": 1.1217420224000079,
-                "stddev": 0.015202310595791888,
+                "min": 1.1322664810000163,
+                "max": 1.1919645860000116,
+                "mean": 1.1615465232000077,
+                "stddev": 0.028609066083586408,
                 "rounds": 5,
-                "median": 1.1173587950000012,
-                "iqr": 0.02025382424999833,
-                "q1": 1.1102282960000096,
-                "q3": 1.130482120250008,
+                "median": 1.158142755,
+                "iqr": 0.055690083250027556,
+                "q1": 1.1346933894999935,
+                "q3": 1.190383472750021,
                 "iqr_outliers": 0,
-                "stddev_outliers": 1,
-                "outliers": "1;0",
-                "ld15iqr": 1.109153111000012,
-                "hd15iqr": 1.1464530320000108,
-                "ops": 0.89147056990917,
-                "total": 5.60871011200004,
+                "stddev_outliers": 2,
+                "outliers": "2;0",
+                "ld15iqr": 1.1322664810000163,
+                "hd15iqr": 1.1919645860000116,
+                "ops": 0.8609211770915948,
+                "total": 5.807732616000038,
                 "iterations": 1
             }
         }
     ],
-    "datetime": "2024-11-19T16:51:14.978410+00:00",
+    "datetime": "2025-02-19T14:40:32.307513+00:00",
     "version": "5.1.0"
 }
\ No newline at end of file
diff --git a/benchmark/results/Linux-CPython-3.12-64bit/0024_ee29897eeeed1990952acd68d1dde3f05712d2ee_20240731_113401.json b/benchmark/results/Linux-CPython-3.12-64bit/0054_0b3fe00d5bbcbb60b8b7b090d6b9d85f4b99be32_20250219_144048.json
similarity index 72%
rename from benchmark/results/Linux-CPython-3.12-64bit/0024_ee29897eeeed1990952acd68d1dde3f05712d2ee_20240731_113401.json
rename to benchmark/results/Linux-CPython-3.12-64bit/0054_0b3fe00d5bbcbb60b8b7b090d6b9d85f4b99be32_20250219_144048.json
index 30d86ee..214a842 100644
--- a/benchmark/results/Linux-CPython-3.12-64bit/0024_ee29897eeeed1990952acd68d1dde3f05712d2ee_20240731_113401.json
+++ b/benchmark/results/Linux-CPython-3.12-64bit/0054_0b3fe00d5bbcbb60b8b7b090d6b9d85f4b99be32_20250219_144048.json
@@ -1,20 +1,20 @@
 {
     "machine_info": {
-        "node": "fv-az1040-171",
+        "node": "fv-az1344-226",
         "processor": "x86_64",
         "machine": "x86_64",
-        "python_compiler": "GCC 11.4.0",
+        "python_compiler": "GCC 13.3.0",
         "python_implementation": "CPython",
-        "python_implementation_version": "3.12.4",
-        "python_version": "3.12.4",
+        "python_implementation_version": "3.12.3",
+        "python_version": "3.12.3",
         "python_build": [
             "main",
-            "Jul 15 2024 21:50:45"
+            "Jan 17 2025 18:03:48"
         ],
-        "release": "6.5.0-1024-azure",
+        "release": "6.8.0-1021-azure",
         "system": "Linux",
         "cpu": {
-            "python_version": "3.12.4.final.0 (64 bit)",
+            "python_version": "3.12.3.final.0 (64 bit)",
             "cpuinfo_version": [
                 9,
                 0,
@@ -79,7 +79,6 @@
                 "ht",
                 "hypervisor",
                 "invpcid",
-                "invpcid_single",
                 "lahf_lm",
                 "lm",
                 "mca",
@@ -134,6 +133,7 @@
                 "tsc_reliable",
                 "tsc_scale",
                 "umip",
+                "user_shstk",
                 "v_vmsave_vmload",
                 "vaes",
                 "vmcb_clean",
@@ -156,9 +156,9 @@
         }
     },
     "commit_info": {
-        "id": "ee29897eeeed1990952acd68d1dde3f05712d2ee",
-        "time": "2024-07-31T11:33:37Z",
-        "author_time": "2024-07-31T11:33:37Z",
+        "id": "0b3fe00d5bbcbb60b8b7b090d6b9d85f4b99be32",
+        "time": "2025-02-19T14:40:32Z",
+        "author_time": "2025-02-19T14:40:32Z",
         "dirty": false,
         "project": "ariadne",
         "branch": "main"
@@ -180,22 +180,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.066419121000024,
-                "max": 1.1504020880000212,
-                "mean": 1.1154066586000055,
-                "stddev": 0.039722291260887374,
+                "min": 0.7795780019999938,
+                "max": 0.8264009669999837,
+                "mean": 0.8013291201999948,
+                "stddev": 0.01899890052871922,
                 "rounds": 5,
-                "median": 1.1306645929999775,
-                "iqr": 0.07353191199997866,
-                "q1": 1.0764170042500183,
-                "q3": 1.149948916249997,
+                "median": 0.7942749280000214,
+                "iqr": 0.02962409475000527,
+                "q1": 0.7883322127499852,
+                "q3": 0.8179563074999905,
                 "iqr_outliers": 0,
-                "stddev_outliers": 1,
-                "outliers": "1;0",
-                "ld15iqr": 1.066419121000024,
-                "hd15iqr": 1.1504020880000212,
-                "ops": 0.896534006041476,
-                "total": 5.577033293000028,
+                "stddev_outliers": 2,
+                "outliers": "2;0",
+                "ld15iqr": 0.7795780019999938,
+                "hd15iqr": 0.8264009669999837,
+                "ops": 1.2479266942781526,
+                "total": 4.006645600999974,
                 "iterations": 1
             }
         },
@@ -215,22 +215,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.0699412230000007,
-                "max": 1.1212444770000047,
-                "mean": 1.094924699600017,
-                "stddev": 0.02003032117752173,
+                "min": 0.7939106199999912,
+                "max": 0.8403612129999942,
+                "mean": 0.8224801752000019,
+                "stddev": 0.020884804092429154,
                 "rounds": 5,
-                "median": 1.092540184000029,
-                "iqr": 0.030628323499968246,
-                "q1": 1.0801706560000355,
-                "q3": 1.1107989795000037,
+                "median": 0.8340974200000062,
+                "iqr": 0.03468919950000782,
+                "q1": 0.803451238000001,
+                "q3": 0.8381404375000088,
                 "iqr_outliers": 0,
-                "stddev_outliers": 2,
-                "outliers": "2;0",
-                "ld15iqr": 1.0699412230000007,
-                "hd15iqr": 1.1212444770000047,
-                "ops": 0.9133048148108326,
-                "total": 5.474623498000085,
+                "stddev_outliers": 1,
+                "outliers": "1;0",
+                "ld15iqr": 0.7939106199999912,
+                "hd15iqr": 0.8403612129999942,
+                "ops": 1.2158347765121886,
+                "total": 4.1124008760000095,
                 "iterations": 1
             }
         },
@@ -250,22 +250,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.317379953999989,
-                "max": 1.357011846999967,
-                "mean": 1.3404660446000094,
-                "stddev": 0.017418014839963154,
+                "min": 0.9674200899999903,
+                "max": 1.0074133560000007,
+                "mean": 0.9870286933999978,
+                "stddev": 0.019349158645455736,
                 "rounds": 5,
-                "median": 1.3425077220000503,
-                "iqr": 0.030922181250033987,
-                "q1": 1.3258743969999927,
-                "q3": 1.3567965782500266,
+                "median": 0.9875196090000031,
+                "iqr": 0.037990188500003796,
+                "q1": 0.967655490999995,
+                "q3": 1.0056456794999988,
                 "iqr_outliers": 0,
-                "stddev_outliers": 1,
-                "outliers": "1;0",
-                "ld15iqr": 1.317379953999989,
-                "hd15iqr": 1.357011846999967,
-                "ops": 0.7460091988368096,
-                "total": 6.702330223000047,
+                "stddev_outliers": 2,
+                "outliers": "2;0",
+                "ld15iqr": 0.9674200899999903,
+                "hd15iqr": 1.0074133560000007,
+                "ops": 1.0131417725611604,
+                "total": 4.935143466999989,
                 "iterations": 1
             }
         },
@@ -285,26 +285,26 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.223492723999982,
-                "max": 1.2983315160000188,
-                "mean": 1.2548397466000096,
-                "stddev": 0.030993950029672482,
+                "min": 0.8726470440000185,
+                "max": 0.9230701650000128,
+                "mean": 0.8881149364000066,
+                "stddev": 0.02034792833261566,
                 "rounds": 5,
-                "median": 1.2425142010000059,
-                "iqr": 0.04901553600002728,
-                "q1": 1.231917871500002,
-                "q3": 1.2809334075000294,
+                "median": 0.8809957869999891,
+                "iqr": 0.0213432472500088,
+                "q1": 0.8752411597500043,
+                "q3": 0.8965844070000131,
                 "iqr_outliers": 0,
-                "stddev_outliers": 2,
-                "outliers": "2;0",
-                "ld15iqr": 1.223492723999982,
-                "hd15iqr": 1.2983315160000188,
-                "ops": 0.7969145085733071,
-                "total": 6.274198733000048,
+                "stddev_outliers": 1,
+                "outliers": "1;0",
+                "ld15iqr": 0.8726470440000185,
+                "hd15iqr": 0.9230701650000128,
+                "ops": 1.125980387238528,
+                "total": 4.440574682000033,
                 "iterations": 1
             }
         }
     ],
-    "datetime": "2024-07-31T11:34:37.825205",
-    "version": "4.0.0"
+    "datetime": "2025-02-19T14:41:15.890039+00:00",
+    "version": "5.1.0"
 }
\ No newline at end of file
diff --git a/benchmark/results/Linux-CPython-3.12-64bit/0055_a31947fdc11cdfa9eb9cabb32f67110261454560_20250219_144410.json b/benchmark/results/Linux-CPython-3.12-64bit/0055_a31947fdc11cdfa9eb9cabb32f67110261454560_20250219_144410.json
new file mode 100644
index 0000000..e0401da
--- /dev/null
+++ b/benchmark/results/Linux-CPython-3.12-64bit/0055_a31947fdc11cdfa9eb9cabb32f67110261454560_20250219_144410.json
@@ -0,0 +1,310 @@
+{
+    "machine_info": {
+        "node": "fv-az791-844",
+        "processor": "x86_64",
+        "machine": "x86_64",
+        "python_compiler": "GCC 13.3.0",
+        "python_implementation": "CPython",
+        "python_implementation_version": "3.12.3",
+        "python_version": "3.12.3",
+        "python_build": [
+            "main",
+            "Jan 17 2025 18:03:48"
+        ],
+        "release": "6.8.0-1021-azure",
+        "system": "Linux",
+        "cpu": {
+            "python_version": "3.12.3.final.0 (64 bit)",
+            "cpuinfo_version": [
+                9,
+                0,
+                0
+            ],
+            "cpuinfo_version_string": "9.0.0",
+            "arch": "X86_64",
+            "bits": 64,
+            "count": 4,
+            "arch_string_raw": "x86_64",
+            "vendor_id_raw": "AuthenticAMD",
+            "brand_raw": "AMD EPYC 7763 64-Core Processor",
+            "hz_advertised_friendly": "2.5984 GHz",
+            "hz_actual_friendly": "2.5984 GHz",
+            "hz_advertised": [
+                2598439000,
+                0
+            ],
+            "hz_actual": [
+                2598439000,
+                0
+            ],
+            "stepping": 1,
+            "model": 1,
+            "family": 25,
+            "flags": [
+                "3dnowext",
+                "3dnowprefetch",
+                "abm",
+                "adx",
+                "aes",
+                "aperfmperf",
+                "apic",
+                "arat",
+                "avx",
+                "avx2",
+                "bmi1",
+                "bmi2",
+                "clflush",
+                "clflushopt",
+                "clwb",
+                "clzero",
+                "cmov",
+                "cmp_legacy",
+                "constant_tsc",
+                "cpuid",
+                "cr8_legacy",
+                "cx16",
+                "cx8",
+                "de",
+                "decodeassists",
+                "erms",
+                "extd_apicid",
+                "f16c",
+                "flushbyasid",
+                "fma",
+                "fpu",
+                "fsgsbase",
+                "fsrm",
+                "fxsr",
+                "fxsr_opt",
+                "ht",
+                "hypervisor",
+                "invpcid",
+                "lahf_lm",
+                "lm",
+                "mca",
+                "mce",
+                "misalignsse",
+                "mmx",
+                "mmxext",
+                "movbe",
+                "msr",
+                "mtrr",
+                "nonstop_tsc",
+                "nopl",
+                "npt",
+                "nrip_save",
+                "nx",
+                "osvw",
+                "osxsave",
+                "pae",
+                "pat",
+                "pausefilter",
+                "pcid",
+                "pclmulqdq",
+                "pdpe1gb",
+                "pfthreshold",
+                "pge",
+                "pni",
+                "popcnt",
+                "pse",
+                "pse36",
+                "rdpid",
+                "rdpru",
+                "rdrand",
+                "rdrnd",
+                "rdseed",
+                "rdtscp",
+                "rep_good",
+                "sep",
+                "sha",
+                "sha_ni",
+                "smap",
+                "smep",
+                "sse",
+                "sse2",
+                "sse4_1",
+                "sse4_2",
+                "sse4a",
+                "ssse3",
+                "svm",
+                "syscall",
+                "topoext",
+                "tsc",
+                "tsc_reliable",
+                "tsc_scale",
+                "umip",
+                "user_shstk",
+                "v_vmsave_vmload",
+                "vaes",
+                "vmcb_clean",
+                "vme",
+                "vmmcall",
+                "vpclmulqdq",
+                "xgetbv1",
+                "xsave",
+                "xsavec",
+                "xsaveerptr",
+                "xsaveopt",
+                "xsaves"
+            ],
+            "l3_cache_size": 524288,
+            "l2_cache_size": 1048576,
+            "l1_data_cache_size": 65536,
+            "l1_instruction_cache_size": 65536,
+            "l2_cache_line_size": 512,
+            "l2_cache_associativity": 6
+        }
+    },
+    "commit_info": {
+        "id": "a31947fdc11cdfa9eb9cabb32f67110261454560",
+        "time": "2025-02-19T15:43:51+01:00",
+        "author_time": "2025-02-19T12:00:11+01:00",
+        "dirty": false,
+        "project": "ariadne",
+        "branch": "main"
+    },
+    "benchmarks": [
+        {
+            "group": null,
+            "name": "test_query_without_extensions",
+            "fullname": "benchmark/test_extensions.py::test_query_without_extensions",
+            "params": null,
+            "param": null,
+            "extra_info": {},
+            "options": {
+                "disable_gc": false,
+                "timer": "perf_counter",
+                "min_rounds": 5,
+                "max_time": 1.0,
+                "min_time": 5e-06,
+                "warmup": false
+            },
+            "stats": {
+                "min": 0.818483939999993,
+                "max": 0.8774722929999967,
+                "mean": 0.8525216367999974,
+                "stddev": 0.02238038129634934,
+                "rounds": 5,
+                "median": 0.8527224449999977,
+                "iqr": 0.029091627250014795,
+                "q1": 0.8401722802499911,
+                "q3": 0.8692639075000059,
+                "iqr_outliers": 0,
+                "stddev_outliers": 2,
+                "outliers": "2;0",
+                "ld15iqr": 0.818483939999993,
+                "hd15iqr": 0.8774722929999967,
+                "ops": 1.172990756872252,
+                "total": 4.262608183999987,
+                "iterations": 1
+            }
+        },
+        {
+            "group": null,
+            "name": "test_query_with_noop_extension",
+            "fullname": "benchmark/test_extensions.py::test_query_with_noop_extension",
+            "params": null,
+            "param": null,
+            "extra_info": {},
+            "options": {
+                "disable_gc": false,
+                "timer": "perf_counter",
+                "min_rounds": 5,
+                "max_time": 1.0,
+                "min_time": 5e-06,
+                "warmup": false
+            },
+            "stats": {
+                "min": 0.8262115940000001,
+                "max": 0.8716740379999948,
+                "mean": 0.853440993999999,
+                "stddev": 0.01789856220854163,
+                "rounds": 5,
+                "median": 0.8558230210000062,
+                "iqr": 0.025595910749995454,
+                "q1": 0.8419988674999992,
+                "q3": 0.8675947782499946,
+                "iqr_outliers": 0,
+                "stddev_outliers": 2,
+                "outliers": "2;0",
+                "ld15iqr": 0.8262115940000001,
+                "hd15iqr": 0.8716740379999948,
+                "ops": 1.1717271692247786,
+                "total": 4.2672049699999945,
+                "iterations": 1
+            }
+        },
+        {
+            "group": null,
+            "name": "test_query_with_open_telemetry_extension",
+            "fullname": "benchmark/test_extensions.py::test_query_with_open_telemetry_extension",
+            "params": null,
+            "param": null,
+            "extra_info": {},
+            "options": {
+                "disable_gc": false,
+                "timer": "perf_counter",
+                "min_rounds": 5,
+                "max_time": 1.0,
+                "min_time": 5e-06,
+                "warmup": false
+            },
+            "stats": {
+                "min": 1.0163447499999876,
+                "max": 1.063741678999989,
+                "mean": 1.0323173099999963,
+                "stddev": 0.01828672222682797,
+                "rounds": 5,
+                "median": 1.0266391020000043,
+                "iqr": 0.01595708500000015,
+                "q1": 1.0226051432499972,
+                "q3": 1.0385622282499973,
+                "iqr_outliers": 1,
+                "stddev_outliers": 1,
+                "outliers": "1;1",
+                "ld15iqr": 1.0163447499999876,
+                "hd15iqr": 1.063741678999989,
+                "ops": 0.968694402692912,
+                "total": 5.161586549999981,
+                "iterations": 1
+            }
+        },
+        {
+            "group": null,
+            "name": "test_query_with_open_tracing_extension",
+            "fullname": "benchmark/test_extensions.py::test_query_with_open_tracing_extension",
+            "params": null,
+            "param": null,
+            "extra_info": {},
+            "options": {
+                "disable_gc": false,
+                "timer": "perf_counter",
+                "min_rounds": 5,
+                "max_time": 1.0,
+                "min_time": 5e-06,
+                "warmup": false
+            },
+            "stats": {
+                "min": 0.8891468399999951,
+                "max": 0.9836161590000074,
+                "mean": 0.9368220769999993,
+                "stddev": 0.03755557608554576,
+                "rounds": 5,
+                "median": 0.9440879269999982,
+                "iqr": 0.058889600999975755,
+                "q1": 0.904872871500011,
+                "q3": 0.9637624724999867,
+                "iqr_outliers": 0,
+                "stddev_outliers": 2,
+                "outliers": "2;0",
+                "ld15iqr": 0.8891468399999951,
+                "hd15iqr": 0.9836161590000074,
+                "ops": 1.067438550554142,
+                "total": 4.684110384999997,
+                "iterations": 1
+            }
+        }
+    ],
+    "datetime": "2025-02-19T14:44:39.576227+00:00",
+    "version": "5.1.0"
+}
\ No newline at end of file
diff --git a/benchmark/results/Linux-CPython-3.12-64bit/0028_964935516d05eacc7f2e2dea2f1dd5958405e769_20241119_170342.json b/benchmark/results/Linux-CPython-3.12-64bit/0056_b57b8a4b20440e590c16c858e60f24a8c70c0f6f_20250219_144503.json
similarity index 71%
rename from benchmark/results/Linux-CPython-3.12-64bit/0028_964935516d05eacc7f2e2dea2f1dd5958405e769_20241119_170342.json
rename to benchmark/results/Linux-CPython-3.12-64bit/0056_b57b8a4b20440e590c16c858e60f24a8c70c0f6f_20250219_144503.json
index bb82d45..118b16d 100644
--- a/benchmark/results/Linux-CPython-3.12-64bit/0028_964935516d05eacc7f2e2dea2f1dd5958405e769_20241119_170342.json
+++ b/benchmark/results/Linux-CPython-3.12-64bit/0056_b57b8a4b20440e590c16c858e60f24a8c70c0f6f_20250219_144503.json
@@ -1,20 +1,20 @@
 {
     "machine_info": {
-        "node": "fv-az1487-134",
+        "node": "fv-az1055-6",
         "processor": "x86_64",
         "machine": "x86_64",
-        "python_compiler": "GCC 11.4.0",
+        "python_compiler": "GCC 13.3.0",
         "python_implementation": "CPython",
-        "python_implementation_version": "3.12.7",
-        "python_version": "3.12.7",
+        "python_implementation_version": "3.12.3",
+        "python_version": "3.12.3",
         "python_build": [
             "main",
-            "Oct  1 2024 15:17:55"
+            "Jan 17 2025 18:03:48"
         ],
-        "release": "6.5.0-1025-azure",
+        "release": "6.8.0-1021-azure",
         "system": "Linux",
         "cpu": {
-            "python_version": "3.12.7.final.0 (64 bit)",
+            "python_version": "3.12.3.final.0 (64 bit)",
             "cpuinfo_version": [
                 9,
                 0,
@@ -27,14 +27,14 @@
             "arch_string_raw": "x86_64",
             "vendor_id_raw": "AuthenticAMD",
             "brand_raw": "AMD EPYC 7763 64-Core Processor",
-            "hz_advertised_friendly": "2.4454 GHz",
-            "hz_actual_friendly": "2.4454 GHz",
+            "hz_advertised_friendly": "3.2442 GHz",
+            "hz_actual_friendly": "3.2442 GHz",
             "hz_advertised": [
-                2445431000,
+                3244159000,
                 0
             ],
             "hz_actual": [
-                2445431000,
+                3244159000,
                 0
             ],
             "stepping": 1,
@@ -79,7 +79,6 @@
                 "ht",
                 "hypervisor",
                 "invpcid",
-                "invpcid_single",
                 "lahf_lm",
                 "lm",
                 "mca",
@@ -134,6 +133,7 @@
                 "tsc_reliable",
                 "tsc_scale",
                 "umip",
+                "user_shstk",
                 "v_vmsave_vmload",
                 "vaes",
                 "vmcb_clean",
@@ -156,9 +156,9 @@
         }
     },
     "commit_info": {
-        "id": "964935516d05eacc7f2e2dea2f1dd5958405e769",
-        "time": "2024-11-19T17:03:13Z",
-        "author_time": "2024-11-19T17:03:13Z",
+        "id": "b57b8a4b20440e590c16c858e60f24a8c70c0f6f",
+        "time": "2025-02-19T14:44:39Z",
+        "author_time": "2025-02-19T14:44:39Z",
         "dirty": false,
         "project": "ariadne",
         "branch": "main"
@@ -180,22 +180,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 0.964985420000005,
-                "max": 1.0124737319999895,
-                "mean": 0.9891893961999983,
-                "stddev": 0.019401438537975744,
+                "min": 0.8214032750000229,
+                "max": 0.9256884790000015,
+                "mean": 0.864929788400002,
+                "stddev": 0.03934743809916573,
                 "rounds": 5,
-                "median": 0.9825462899999877,
-                "iqr": 0.03039395275000345,
-                "q1": 0.9767134947500011,
-                "q3": 1.0071074475000046,
+                "median": 0.8519002799999953,
+                "iqr": 0.04801718749999395,
+                "q1": 0.8414992160000025,
+                "q3": 0.8895164034999965,
                 "iqr_outliers": 0,
                 "stddev_outliers": 2,
                 "outliers": "2;0",
-                "ld15iqr": 0.964985420000005,
-                "hd15iqr": 1.0124737319999895,
-                "ops": 1.0109287501883168,
-                "total": 4.945946980999992,
+                "ld15iqr": 0.8214032750000229,
+                "hd15iqr": 0.9256884790000015,
+                "ops": 1.156163209328076,
+                "total": 4.32464894200001,
                 "iterations": 1
             }
         },
@@ -215,22 +215,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 0.969517317999987,
-                "max": 1.0378109850000214,
-                "mean": 1.0062178275999998,
-                "stddev": 0.02579212163121312,
+                "min": 0.8135877449999782,
+                "max": 0.9171011580000084,
+                "mean": 0.8681513192000011,
+                "stddev": 0.03945997194205131,
                 "rounds": 5,
-                "median": 1.0131763720000038,
-                "iqr": 0.034363945999999146,
-                "q1": 0.9877032384999964,
-                "q3": 1.0220671844999956,
+                "median": 0.873910201000001,
+                "iqr": 0.05628642675000606,
+                "q1": 0.839251959000002,
+                "q3": 0.8955383857500081,
                 "iqr_outliers": 0,
                 "stddev_outliers": 2,
                 "outliers": "2;0",
-                "ld15iqr": 0.969517317999987,
-                "hd15iqr": 1.0378109850000214,
-                "ops": 0.9938205948757335,
-                "total": 5.031089137999999,
+                "ld15iqr": 0.8135877449999782,
+                "hd15iqr": 0.9171011580000084,
+                "ops": 1.1518729257032023,
+                "total": 4.340756596000006,
                 "iterations": 1
             }
         },
@@ -250,22 +250,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.17659527699999,
-                "max": 1.1941279950000023,
-                "mean": 1.1853398462000029,
-                "stddev": 0.007791819402434392,
+                "min": 1.000407432000003,
+                "max": 1.0484323889999985,
+                "mean": 1.0248581600000022,
+                "stddev": 0.018342717157505056,
                 "rounds": 5,
-                "median": 1.181843645000015,
-                "iqr": 0.013318385499992758,
-                "q1": 1.1799808340000055,
-                "q3": 1.1932992194999983,
+                "median": 1.0263575079999896,
+                "iqr": 0.026618606999996075,
+                "q1": 1.0112057257500098,
+                "q3": 1.0378243327500059,
                 "iqr_outliers": 0,
                 "stddev_outliers": 2,
                 "outliers": "2;0",
-                "ld15iqr": 1.17659527699999,
-                "hd15iqr": 1.1941279950000023,
-                "ops": 0.8436399090149792,
-                "total": 5.926699231000015,
+                "ld15iqr": 1.000407432000003,
+                "hd15iqr": 1.0484323889999985,
+                "ops": 0.9757447801362071,
+                "total": 5.124290800000011,
                 "iterations": 1
             }
         },
@@ -285,26 +285,26 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.059595102000003,
-                "max": 1.087683535999986,
-                "mean": 1.0772959449999973,
-                "stddev": 0.0110664291549801,
+                "min": 0.9157610089999935,
+                "max": 1.0114934590000075,
+                "mean": 0.945280453600003,
+                "stddev": 0.03928513486100811,
                 "rounds": 5,
-                "median": 1.0806042810000065,
-                "iqr": 0.014497826500004862,
-                "q1": 1.070634718749993,
-                "q3": 1.0851325452499978,
+                "median": 0.9253248660000111,
+                "iqr": 0.04459346150002119,
+                "q1": 0.9212936779999907,
+                "q3": 0.9658871395000119,
                 "iqr_outliers": 0,
                 "stddev_outliers": 1,
                 "outliers": "1;0",
-                "ld15iqr": 1.059595102000003,
-                "hd15iqr": 1.087683535999986,
-                "ops": 0.9282500362516471,
-                "total": 5.386479724999987,
+                "ld15iqr": 0.9157610089999935,
+                "hd15iqr": 1.0114934590000075,
+                "ops": 1.0578871023849095,
+                "total": 4.726402268000015,
                 "iterations": 1
             }
         }
     ],
-    "datetime": "2024-11-19T17:04:15.001716+00:00",
+    "datetime": "2025-02-19T14:45:32.690033+00:00",
     "version": "5.1.0"
 }
\ No newline at end of file
diff --git a/benchmark/results/Linux-CPython-3.12-64bit/0021_28eaf28019ead1507dcbe805cb0561ff5a6e7230_20240405_163941.json b/benchmark/results/Linux-CPython-3.12-64bit/0057_27f2bf7a7d0dfb4240dfc7b742ad61ade79f71c5_20250219_144553.json
similarity index 71%
rename from benchmark/results/Linux-CPython-3.12-64bit/0021_28eaf28019ead1507dcbe805cb0561ff5a6e7230_20240405_163941.json
rename to benchmark/results/Linux-CPython-3.12-64bit/0057_27f2bf7a7d0dfb4240dfc7b742ad61ade79f71c5_20250219_144553.json
index 7c321ab..e0f9700 100644
--- a/benchmark/results/Linux-CPython-3.12-64bit/0021_28eaf28019ead1507dcbe805cb0561ff5a6e7230_20240405_163941.json
+++ b/benchmark/results/Linux-CPython-3.12-64bit/0057_27f2bf7a7d0dfb4240dfc7b742ad61ade79f71c5_20250219_144553.json
@@ -1,20 +1,20 @@
 {
     "machine_info": {
-        "node": "fv-az711-63",
+        "node": "fv-az1693-854",
         "processor": "x86_64",
         "machine": "x86_64",
-        "python_compiler": "GCC 11.4.0",
+        "python_compiler": "GCC 13.3.0",
         "python_implementation": "CPython",
-        "python_implementation_version": "3.12.2",
-        "python_version": "3.12.2",
+        "python_implementation_version": "3.12.3",
+        "python_version": "3.12.3",
         "python_build": [
             "main",
-            "Feb  7 2024 16:26:19"
+            "Jan 17 2025 18:03:48"
         ],
-        "release": "6.5.0-1017-azure",
+        "release": "6.8.0-1021-azure",
         "system": "Linux",
         "cpu": {
-            "python_version": "3.12.2.final.0 (64 bit)",
+            "python_version": "3.12.3.final.0 (64 bit)",
             "cpuinfo_version": [
                 9,
                 0,
@@ -30,11 +30,11 @@
             "hz_advertised_friendly": "2.4454 GHz",
             "hz_actual_friendly": "2.4454 GHz",
             "hz_advertised": [
-                2445428000,
+                2445427000,
                 0
             ],
             "hz_actual": [
-                2445428000,
+                2445427000,
                 0
             ],
             "stepping": 1,
@@ -79,7 +79,6 @@
                 "ht",
                 "hypervisor",
                 "invpcid",
-                "invpcid_single",
                 "lahf_lm",
                 "lm",
                 "mca",
@@ -134,6 +133,7 @@
                 "tsc_reliable",
                 "tsc_scale",
                 "umip",
+                "user_shstk",
                 "v_vmsave_vmload",
                 "vaes",
                 "vmcb_clean",
@@ -156,9 +156,9 @@
         }
     },
     "commit_info": {
-        "id": "28eaf28019ead1507dcbe805cb0561ff5a6e7230",
-        "time": "2024-04-05T16:39:05+00:00",
-        "author_time": "2024-04-05T16:39:05+00:00",
+        "id": "27f2bf7a7d0dfb4240dfc7b742ad61ade79f71c5",
+        "time": "2025-02-19T14:45:32Z",
+        "author_time": "2025-02-19T14:45:32Z",
         "dirty": false,
         "project": "ariadne",
         "branch": "main"
@@ -180,22 +180,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 0.946305389999992,
-                "max": 1.1685785880000026,
-                "mean": 1.0232417229999953,
-                "stddev": 0.08466793017683259,
+                "min": 0.7850479319999977,
+                "max": 0.8275705669999809,
+                "mean": 0.8054524489999949,
+                "stddev": 0.01680035312720266,
                 "rounds": 5,
-                "median": 0.9982385289999911,
-                "iqr": 0.06417245400000837,
-                "q1": 0.9834315607499917,
-                "q3": 1.04760401475,
-                "iqr_outliers": 1,
-                "stddev_outliers": 1,
-                "outliers": "1;1",
-                "ld15iqr": 0.946305389999992,
-                "hd15iqr": 1.1685785880000026,
-                "ops": 0.9772861851920444,
-                "total": 5.116208614999977,
+                "median": 0.8010488769999995,
+                "iqr": 0.02564724649999306,
+                "q1": 0.7938517649999994,
+                "q3": 0.8194990114999925,
+                "iqr_outliers": 0,
+                "stddev_outliers": 2,
+                "outliers": "2;0",
+                "ld15iqr": 0.7850479319999977,
+                "hd15iqr": 0.8275705669999809,
+                "ops": 1.2415382202159104,
+                "total": 4.027262244999974,
                 "iterations": 1
             }
         },
@@ -215,22 +215,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 0.9727996599999926,
-                "max": 1.0030179229999874,
-                "mean": 0.992348685199994,
-                "stddev": 0.011922620080732341,
+                "min": 0.7923019209999893,
+                "max": 0.838737956000017,
+                "mean": 0.8203554458000042,
+                "stddev": 0.02023388024716261,
                 "rounds": 5,
-                "median": 0.9933760339999935,
-                "iqr": 0.014322260499973538,
-                "q1": 0.9870222460000093,
-                "q3": 1.0013445064999829,
+                "median": 0.8323893630000043,
+                "iqr": 0.031876109499997085,
+                "q1": 0.8023224257500061,
+                "q3": 0.8341985352500032,
                 "iqr_outliers": 0,
                 "stddev_outliers": 1,
                 "outliers": "1;0",
-                "ld15iqr": 0.9727996599999926,
-                "hd15iqr": 1.0030179229999874,
-                "ops": 1.007710308799839,
-                "total": 4.96174342599997,
+                "ld15iqr": 0.7923019209999893,
+                "hd15iqr": 0.838737956000017,
+                "ops": 1.218983801618831,
+                "total": 4.101777229000021,
                 "iterations": 1
             }
         },
@@ -250,22 +250,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.2146073090000016,
-                "max": 1.2437247880000086,
-                "mean": 1.2249273708000032,
-                "stddev": 0.012262703908028843,
+                "min": 0.9665060199999971,
+                "max": 0.989351825,
+                "mean": 0.9753459619999945,
+                "stddev": 0.010122133460396669,
                 "rounds": 5,
-                "median": 1.2187555419999967,
-                "iqr": 0.017933586999987483,
-                "q1": 1.216155674250011,
-                "q3": 1.2340892612499985,
+                "median": 0.9705924399999901,
+                "iqr": 0.016978466499999456,
+                "q1": 0.9673478192499942,
+                "q3": 0.9843262857499937,
                 "iqr_outliers": 0,
                 "stddev_outliers": 1,
                 "outliers": "1;0",
-                "ld15iqr": 1.2146073090000016,
-                "hd15iqr": 1.2437247880000086,
-                "ops": 0.8163749327822575,
-                "total": 6.124636854000016,
+                "ld15iqr": 0.9665060199999971,
+                "hd15iqr": 0.989351825,
+                "ops": 1.0252772236319627,
+                "total": 4.876729809999972,
                 "iterations": 1
             }
         },
@@ -285,26 +285,26 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.1223707649999994,
-                "max": 1.1615233800000055,
-                "mean": 1.1433434190000014,
-                "stddev": 0.01474720220827666,
+                "min": 0.8656842729999994,
+                "max": 0.9163425229999973,
+                "mean": 0.8843147298000019,
+                "stddev": 0.01902837267936788,
                 "rounds": 5,
-                "median": 1.147588818999992,
-                "iqr": 0.01930329199998937,
-                "q1": 1.1327979212500097,
-                "q3": 1.152101213249999,
+                "median": 0.8790445780000198,
+                "iqr": 0.01672321224999962,
+                "q1": 0.8745800964999972,
+                "q3": 0.8913033087499969,
                 "iqr_outliers": 0,
-                "stddev_outliers": 2,
-                "outliers": "2;0",
-                "ld15iqr": 1.1223707649999994,
-                "hd15iqr": 1.1615233800000055,
-                "ops": 0.8746278531734819,
-                "total": 5.716717095000007,
+                "stddev_outliers": 1,
+                "outliers": "1;0",
+                "ld15iqr": 0.8656842729999994,
+                "hd15iqr": 0.9163425229999973,
+                "ops": 1.1308191148485807,
+                "total": 4.42157364900001,
                 "iterations": 1
             }
         }
     ],
-    "datetime": "2024-04-05T16:40:15.184723",
-    "version": "4.0.0"
+    "datetime": "2025-02-19T14:46:20.982505+00:00",
+    "version": "5.1.0"
 }
\ No newline at end of file
diff --git a/benchmark/results/Linux-CPython-3.12-64bit/0020_52e8623e6b22bacf40440e11cefea848961452cc_20240403_154453.json b/benchmark/results/Linux-CPython-3.12-64bit/0058_4dae4677a34568b4419a056a1d52bc0f64a09d99_20250219_144641.json
similarity index 70%
rename from benchmark/results/Linux-CPython-3.12-64bit/0020_52e8623e6b22bacf40440e11cefea848961452cc_20240403_154453.json
rename to benchmark/results/Linux-CPython-3.12-64bit/0058_4dae4677a34568b4419a056a1d52bc0f64a09d99_20250219_144641.json
index f493057..2f57bf1 100644
--- a/benchmark/results/Linux-CPython-3.12-64bit/0020_52e8623e6b22bacf40440e11cefea848961452cc_20240403_154453.json
+++ b/benchmark/results/Linux-CPython-3.12-64bit/0058_4dae4677a34568b4419a056a1d52bc0f64a09d99_20250219_144641.json
@@ -1,20 +1,20 @@
 {
     "machine_info": {
-        "node": "fv-az777-987",
+        "node": "fv-az1377-176",
         "processor": "x86_64",
         "machine": "x86_64",
-        "python_compiler": "GCC 11.4.0",
+        "python_compiler": "GCC 13.3.0",
         "python_implementation": "CPython",
-        "python_implementation_version": "3.12.2",
-        "python_version": "3.12.2",
+        "python_implementation_version": "3.12.9",
+        "python_version": "3.12.9",
         "python_build": [
             "main",
-            "Feb  7 2024 16:26:19"
+            "Feb  5 2025 03:22:31"
         ],
-        "release": "6.5.0-1016-azure",
+        "release": "6.8.0-1021-azure",
         "system": "Linux",
         "cpu": {
-            "python_version": "3.12.2.final.0 (64 bit)",
+            "python_version": "3.12.9.final.0 (64 bit)",
             "cpuinfo_version": [
                 9,
                 0,
@@ -27,14 +27,14 @@
             "arch_string_raw": "x86_64",
             "vendor_id_raw": "AuthenticAMD",
             "brand_raw": "AMD EPYC 7763 64-Core Processor",
-            "hz_advertised_friendly": "3.2431 GHz",
-            "hz_actual_friendly": "3.2431 GHz",
+            "hz_advertised_friendly": "3.2697 GHz",
+            "hz_actual_friendly": "3.2697 GHz",
             "hz_advertised": [
-                3243122000,
+                3269705000,
                 0
             ],
             "hz_actual": [
-                3243122000,
+                3269705000,
                 0
             ],
             "stepping": 1,
@@ -79,7 +79,6 @@
                 "ht",
                 "hypervisor",
                 "invpcid",
-                "invpcid_single",
                 "lahf_lm",
                 "lm",
                 "mca",
@@ -134,6 +133,7 @@
                 "tsc_reliable",
                 "tsc_scale",
                 "umip",
+                "user_shstk",
                 "v_vmsave_vmload",
                 "vaes",
                 "vmcb_clean",
@@ -156,9 +156,9 @@
         }
     },
     "commit_info": {
-        "id": "52e8623e6b22bacf40440e11cefea848961452cc",
-        "time": "2024-04-03T15:44:04+00:00",
-        "author_time": "2024-04-03T15:44:04+00:00",
+        "id": "4dae4677a34568b4419a056a1d52bc0f64a09d99",
+        "time": "2025-02-19T14:46:21Z",
+        "author_time": "2025-02-19T14:46:21Z",
         "dirty": false,
         "project": "ariadne",
         "branch": "main"
@@ -180,22 +180,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.0123430860000155,
-                "max": 1.0788753829999962,
-                "mean": 1.0434987848000048,
-                "stddev": 0.031332419062027585,
+                "min": 0.970603710000006,
+                "max": 1.0322911979999958,
+                "mean": 0.9998187744000007,
+                "stddev": 0.02372997510448366,
                 "rounds": 5,
-                "median": 1.0353040239999984,
-                "iqr": 0.05945079399998576,
-                "q1": 1.0157911982500138,
-                "q3": 1.0752419922499996,
+                "median": 1.0058765450000067,
+                "iqr": 0.03266816025000452,
+                "q1": 0.980398690499996,
+                "q3": 1.0130668507500005,
                 "iqr_outliers": 0,
-                "stddev_outliers": 1,
-                "outliers": "1;0",
-                "ld15iqr": 1.0123430860000155,
-                "hd15iqr": 1.0788753829999962,
-                "ops": 0.9583144844693405,
-                "total": 5.217493924000024,
+                "stddev_outliers": 2,
+                "outliers": "2;0",
+                "ld15iqr": 0.970603710000006,
+                "hd15iqr": 1.0322911979999958,
+                "ops": 1.0001812584486705,
+                "total": 4.999093872000003,
                 "iterations": 1
             }
         },
@@ -215,22 +215,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.0060754160000158,
-                "max": 1.1313839609999832,
-                "mean": 1.076759136000004,
-                "stddev": 0.047980924556301804,
+                "min": 0.9879152210000086,
+                "max": 1.0549585159999992,
+                "mean": 1.0210573583999973,
+                "stddev": 0.02991641643715223,
                 "rounds": 5,
-                "median": 1.069617700000009,
-                "iqr": 0.06329665349998947,
-                "q1": 1.0518035715000096,
-                "q3": 1.115100224999999,
+                "median": 1.0238528319999887,
+                "iqr": 0.05526945300001529,
+                "q1": 0.9921845742499897,
+                "q3": 1.047454027250005,
                 "iqr_outliers": 0,
                 "stddev_outliers": 2,
                 "outliers": "2;0",
-                "ld15iqr": 1.0060754160000158,
-                "hd15iqr": 1.1313839609999832,
-                "ops": 0.9287128073181227,
-                "total": 5.38379568000002,
+                "ld15iqr": 0.9879152210000086,
+                "hd15iqr": 1.0549585159999992,
+                "ops": 0.9793769094098745,
+                "total": 5.105286791999987,
                 "iterations": 1
             }
         },
@@ -250,22 +250,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.2576212539999858,
-                "max": 1.3180668159999982,
-                "mean": 1.285400852999993,
-                "stddev": 0.022086062436922276,
+                "min": 1.21323886899998,
+                "max": 1.22345033000002,
+                "mean": 1.219420636199993,
+                "stddev": 0.003844508939745866,
                 "rounds": 5,
-                "median": 1.2855163649999781,
-                "iqr": 0.025711766000007685,
-                "q1": 1.2712800619999953,
-                "q3": 1.296991828000003,
+                "median": 1.2199748529999965,
+                "iqr": 0.0044157025000117756,
+                "q1": 1.2175429719999826,
+                "q3": 1.2219586744999944,
                 "iqr_outliers": 0,
                 "stddev_outliers": 2,
                 "outliers": "2;0",
-                "ld15iqr": 1.2576212539999858,
-                "hd15iqr": 1.3180668159999982,
-                "ops": 0.7779674314561899,
-                "total": 6.427004264999965,
+                "ld15iqr": 1.21323886899998,
+                "hd15iqr": 1.22345033000002,
+                "ops": 0.8200615688416095,
+                "total": 6.097103180999966,
                 "iterations": 1
             }
         },
@@ -285,26 +285,26 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.1943010820000097,
-                "max": 1.2762506530000053,
-                "mean": 1.2288011122000058,
-                "stddev": 0.03215840299632225,
+                "min": 1.0739720939999984,
+                "max": 1.1120908039999904,
+                "mean": 1.093980813199994,
+                "stddev": 0.015569755530404034,
                 "rounds": 5,
-                "median": 1.2184410979999996,
-                "iqr": 0.04612506275000072,
-                "q1": 1.2063862085000068,
-                "q3": 1.2525112712500075,
+                "median": 1.1001488279999876,
+                "iqr": 0.024310224499998867,
+                "q1": 1.0799873774999966,
+                "q3": 1.1042976019999955,
                 "iqr_outliers": 0,
                 "stddev_outliers": 2,
                 "outliers": "2;0",
-                "ld15iqr": 1.1943010820000097,
-                "hd15iqr": 1.2762506530000053,
-                "ops": 0.8138013467530416,
-                "total": 6.144005561000029,
+                "ld15iqr": 1.0739720939999984,
+                "hd15iqr": 1.1120908039999904,
+                "ops": 0.9140928140000084,
+                "total": 5.46990406599997,
                 "iterations": 1
             }
         }
     ],
-    "datetime": "2024-04-03T15:45:28.985406",
-    "version": "4.0.0"
+    "datetime": "2025-02-19T14:47:15.141648+00:00",
+    "version": "5.1.0"
 }
\ No newline at end of file
diff --git a/benchmark/results/Linux-CPython-3.12-64bit/0022_5351d0c0b43c3d0df4d0db1c5da71d36f3bff082_20240409_085927.json b/benchmark/results/Linux-CPython-3.12-64bit/0059_7591735399b4af3d017d7638be618c929e87fd55_20250219_144731.json
similarity index 69%
rename from benchmark/results/Linux-CPython-3.12-64bit/0022_5351d0c0b43c3d0df4d0db1c5da71d36f3bff082_20240409_085927.json
rename to benchmark/results/Linux-CPython-3.12-64bit/0059_7591735399b4af3d017d7638be618c929e87fd55_20250219_144731.json
index c3b4b11..697bc37 100644
--- a/benchmark/results/Linux-CPython-3.12-64bit/0022_5351d0c0b43c3d0df4d0db1c5da71d36f3bff082_20240409_085927.json
+++ b/benchmark/results/Linux-CPython-3.12-64bit/0059_7591735399b4af3d017d7638be618c929e87fd55_20250219_144731.json
@@ -1,20 +1,20 @@
 {
     "machine_info": {
-        "node": "fv-az1251-485",
+        "node": "fv-az1326-415",
         "processor": "x86_64",
         "machine": "x86_64",
-        "python_compiler": "GCC 11.4.0",
+        "python_compiler": "GCC 13.3.0",
         "python_implementation": "CPython",
-        "python_implementation_version": "3.12.2",
-        "python_version": "3.12.2",
+        "python_implementation_version": "3.12.3",
+        "python_version": "3.12.3",
         "python_build": [
             "main",
-            "Feb  7 2024 16:26:19"
+            "Jan 17 2025 18:03:48"
         ],
-        "release": "6.5.0-1017-azure",
+        "release": "6.8.0-1021-azure",
         "system": "Linux",
         "cpu": {
-            "python_version": "3.12.2.final.0 (64 bit)",
+            "python_version": "3.12.3.final.0 (64 bit)",
             "cpuinfo_version": [
                 9,
                 0,
@@ -27,14 +27,14 @@
             "arch_string_raw": "x86_64",
             "vendor_id_raw": "AuthenticAMD",
             "brand_raw": "AMD EPYC 7763 64-Core Processor",
-            "hz_advertised_friendly": "3.2247 GHz",
-            "hz_actual_friendly": "3.2247 GHz",
+            "hz_advertised_friendly": "3.2413 GHz",
+            "hz_actual_friendly": "3.2413 GHz",
             "hz_advertised": [
-                3224668000,
+                3241334000,
                 0
             ],
             "hz_actual": [
-                3224668000,
+                3241334000,
                 0
             ],
             "stepping": 1,
@@ -79,7 +79,6 @@
                 "ht",
                 "hypervisor",
                 "invpcid",
-                "invpcid_single",
                 "lahf_lm",
                 "lm",
                 "mca",
@@ -134,6 +133,7 @@
                 "tsc_reliable",
                 "tsc_scale",
                 "umip",
+                "user_shstk",
                 "v_vmsave_vmload",
                 "vaes",
                 "vmcb_clean",
@@ -156,9 +156,9 @@
         }
     },
     "commit_info": {
-        "id": "5351d0c0b43c3d0df4d0db1c5da71d36f3bff082",
-        "time": "2024-04-09T08:58:53+00:00",
-        "author_time": "2024-04-09T08:58:53+00:00",
+        "id": "7591735399b4af3d017d7638be618c929e87fd55",
+        "time": "2025-02-19T14:47:15Z",
+        "author_time": "2025-02-19T14:47:15Z",
         "dirty": false,
         "project": "ariadne",
         "branch": "main"
@@ -180,22 +180,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 0.9863289219999842,
-                "max": 1.055583667999997,
-                "mean": 1.0277729353999974,
-                "stddev": 0.03175547148698686,
+                "min": 0.7831119500000057,
+                "max": 0.83592510699998,
+                "mean": 0.8161058089999983,
+                "stddev": 0.020047506770840648,
                 "rounds": 5,
-                "median": 1.0461019740000097,
-                "iqr": 0.053988886749998244,
-                "q1": 0.9973134227499969,
-                "q3": 1.0513023094999951,
+                "median": 0.8177830270000186,
+                "iqr": 0.021232374499987827,
+                "q1": 0.8081543052499995,
+                "q3": 0.8293866797499874,
                 "iqr_outliers": 0,
                 "stddev_outliers": 1,
                 "outliers": "1;0",
-                "ld15iqr": 0.9863289219999842,
-                "hd15iqr": 1.055583667999997,
-                "ops": 0.9729775571593657,
-                "total": 5.138864676999987,
+                "ld15iqr": 0.7831119500000057,
+                "hd15iqr": 0.83592510699998,
+                "ops": 1.225331309950279,
+                "total": 4.080529044999992,
                 "iterations": 1
             }
         },
@@ -215,22 +215,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.0252110049999885,
-                "max": 1.049879140999991,
-                "mean": 1.0419819899999994,
-                "stddev": 0.010119419713351122,
+                "min": 0.8263063199999863,
+                "max": 0.8676142380000158,
+                "mean": 0.8381468651999967,
+                "stddev": 0.016914205452043137,
                 "rounds": 5,
-                "median": 1.0462615480000181,
-                "iqr": 0.012628482000010877,
-                "q1": 1.0362813732499916,
-                "q3": 1.0489098552500025,
-                "iqr_outliers": 0,
+                "median": 0.8340848329999915,
+                "iqr": 0.015872403750002206,
+                "q1": 0.8273272184999954,
+                "q3": 0.8431996222499976,
+                "iqr_outliers": 1,
                 "stddev_outliers": 1,
-                "outliers": "1;0",
-                "ld15iqr": 1.0252110049999885,
-                "hd15iqr": 1.049879140999991,
-                "ops": 0.9597094859576226,
-                "total": 5.209909949999997,
+                "outliers": "1;1",
+                "ld15iqr": 0.8263063199999863,
+                "hd15iqr": 0.8676142380000158,
+                "ops": 1.193108322085512,
+                "total": 4.190734325999983,
                 "iterations": 1
             }
         },
@@ -250,22 +250,22 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.276533365000006,
-                "max": 1.2948863100000096,
-                "mean": 1.2850290320000055,
-                "stddev": 0.007078354328529128,
+                "min": 0.9888345999999899,
+                "max": 1.0204307719999974,
+                "mean": 1.0068647015999943,
+                "stddev": 0.014059729614430493,
                 "rounds": 5,
-                "median": 1.283887538000016,
-                "iqr": 0.010372762000002922,
-                "q1": 1.2799303084999991,
-                "q3": 1.290303070500002,
+                "median": 1.0084855000000061,
+                "iqr": 0.025485293500018713,
+                "q1": 0.9946302632499808,
+                "q3": 1.0201155567499995,
                 "iqr_outliers": 0,
-                "stddev_outliers": 2,
-                "outliers": "2;0",
-                "ld15iqr": 1.276533365000006,
-                "hd15iqr": 1.2948863100000096,
-                "ops": 0.7781925350305982,
-                "total": 6.425145160000028,
+                "stddev_outliers": 1,
+                "outliers": "1;0",
+                "ld15iqr": 0.9888345999999899,
+                "hd15iqr": 1.0204307719999974,
+                "ops": 0.9931821012405284,
+                "total": 5.0343235079999715,
                 "iterations": 1
             }
         },
@@ -285,26 +285,26 @@
                 "warmup": false
             },
             "stats": {
-                "min": 1.130691842999994,
-                "max": 1.225348079000014,
-                "mean": 1.1991659138000046,
-                "stddev": 0.038743235377198364,
+                "min": 0.8944755010000165,
+                "max": 0.9919218629999875,
+                "mean": 0.9193031074000032,
+                "stddev": 0.04102003238037002,
                 "rounds": 5,
-                "median": 1.2128514670000072,
-                "iqr": 0.02980242649999809,
-                "q1": 1.1897055945000048,
-                "q3": 1.2195080210000029,
+                "median": 0.9015089900000248,
+                "iqr": 0.033494173249977166,
+                "q1": 0.8972810275000072,
+                "q3": 0.9307752007499843,
                 "iqr_outliers": 1,
                 "stddev_outliers": 1,
                 "outliers": "1;1",
-                "ld15iqr": 1.2093768450000084,
-                "hd15iqr": 1.225348079000014,
-                "ops": 0.8339129627451859,
-                "total": 5.995829569000023,
+                "ld15iqr": 0.8944755010000165,
+                "hd15iqr": 0.9919218629999875,
+                "ops": 1.0877805067234307,
+                "total": 4.596515537000016,
                 "iterations": 1
             }
         }
     ],
-    "datetime": "2024-04-09T09:00:02.913090",
-    "version": "4.0.0"
+    "datetime": "2025-02-19T14:47:59.731057+00:00",
+    "version": "5.1.0"
 }
\ No newline at end of file
diff --git a/pyproject.toml b/pyproject.toml
index 3dc69dc..096bf80 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -45,7 +45,7 @@ test = [
   "httpx",
   "opentracing",
   "opentelemetry-api",
-  "python-multipart>=0.0.5",
+  "python-multipart>=0.0.13",
   "aiodataloader",
   "graphql-sync-dataloaders;python_version>\"3.7\"",
 ]
@@ -89,11 +89,13 @@ check = [
     "hatch run types:check",
 ]
 
+
 ## Types environment
 
 [tool.hatch.envs.types.scripts]
 check = "mypy --install-types --non-interactive"
 
+
 ## Test environments
 
 [tool.hatch.envs.hatch-test]
@@ -102,6 +104,7 @@ extra-args = []
 
 
 ## Integration tests FastAPI environment
+
 [tool.hatch.envs.test-integration-fastapi]
 features = ["test"]
 extra-dependencies = ["fastapi"]
@@ -109,19 +112,20 @@ scripts.test = "pytest tests_integrations/fastapi"
 
 
 ## Integration tests Flask environment
+
 [tool.hatch.envs.test-integration-flask]
 features = ["test"]
 extra-dependencies = ["flask"]
 scripts.test = "pytest tests_integrations/flask"
 
+
 ## Integration tests Starlette environment
+
 [tool.hatch.envs.test-integration-starlette]
 features = ["test"]
 extra-dependencies = ["starlette"]
 scripts.test = "pytest tests_integrations/starlette"
 
-[tool.hatch.envs.test-integration.scripts]
-test = "pip install {matrix:framework} && pytest tests_integrations/{matrix:framework}"
 
 [[tool.hatch.envs.hatch-test.matrix]]
 python = ["3.9", "3.10", "3.11", "3.12", "3.13"]


Test patch:
diff --git a/tests/asgi/test_configuration.py b/tests/asgi/test_configuration.py
index 3e93ba1..555cf2d 100644
--- a/tests/asgi/test_configuration.py
+++ b/tests/asgi/test_configuration.py
@@ -761,11 +761,6 @@ def test_async_middleware_function_result_is_passed_to_query_executor(schema):
     assert response.json() == {"data": {"hello": "**Hello, BOB!**"}}
 
 
-@pytest.mark.skip(
-    "This test fails with Starlette version 0.45.1,"
-    "but it seems it's the issue with the code itself."
-    "See https://github.com/mirumee/ariadne/issues/1217."
-)
 def test_init_wait_timeout_graphql_transport_ws(
     schema,
 ):