From 66573bd1ac7012b6cdd9a3cfacf3c54c0626b377 Mon Sep 17 00:00:00 2001 From: Simon Cruanes Date: Fri, 31 Jan 2025 16:50:11 -0500 Subject: [PATCH] fix: compat with lwt < 5.7 --- src/client-cohttp-lwt/opentelemetry_client_cohttp_lwt.ml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/client-cohttp-lwt/opentelemetry_client_cohttp_lwt.ml b/src/client-cohttp-lwt/opentelemetry_client_cohttp_lwt.ml index 1cf7eeb9..f46050d8 100644 --- a/src/client-cohttp-lwt/opentelemetry_client_cohttp_lwt.ml +++ b/src/client-cohttp-lwt/opentelemetry_client_cohttp_lwt.ml @@ -8,6 +8,10 @@ module Config = Config open Opentelemetry include Common_ +external reraise : exn -> 'a = "%reraise" +(** This is equivalent to [Lwt.reraise]. We inline it here so we don't force + to use Lwt's latest version *) + let needs_gc_metrics = Atomic.make false let last_gc_metrics = Atomic.make (Mtime_clock.now ()) @@ -605,6 +609,6 @@ let with_setup ?stop ?(config = Config.make ()) ?(enable = true) () f : _ Lwt.t (fun exn -> cleanup (); let* () = cleanup_done in - Lwt.reraise exn) + reraise exn) else f ()