diff --git a/manifest/main.ml b/manifest/main.ml index a474d07dbf3a925712da790ebef285031b13439f..260064f7093306e18e160b9a8e18080102799f63 100644 --- a/manifest/main.ml +++ b/manifest/main.ml @@ -4068,9 +4068,7 @@ let octez_crawler = ~synopsis:"Octez: library to crawl blocks of the L1 chain" ~deps: [ - octez_base |> open_ ~m:"TzPervasives" - |> open_ ~m:"TzPervasives.Error_monad.Legacy_monad_globals" - |> open_; + octez_base |> open_ ~m:"TzPervasives" |> open_; octez_rpc_http |> open_; octez_base_unix; octez_stdlib_unix |> open_; @@ -4085,9 +4083,7 @@ let octez_injector = ~synopsis:"Octez: library for building injectors" ~deps: [ - octez_base |> open_ ~m:"TzPervasives" - |> open_ ~m:"TzPervasives.Error_monad.Legacy_monad_globals" - |> open_; + octez_base |> open_ ~m:"TzPervasives" |> open_; logs_lwt; octez_base_unix; octez_stdlib_unix |> open_; @@ -4106,9 +4102,7 @@ let octez_smart_rollup_lib = ~synopsis:"Octez: library for Smart Rollups " ~deps: [ - octez_base |> open_ ~m:"TzPervasives" - |> open_ ~m:"TzPervasives.Error_monad.Legacy_monad_globals" - |> open_; + octez_base |> open_ ~m:"TzPervasives" |> open_; octez_base_unix; octez_stdlib_unix |> open_; octez_crypto |> open_; @@ -7478,8 +7472,7 @@ let octez_scoru_sequencer = ~synopsis:"Sequencer library for smart contract rollup" ~deps: [ - octez_base |> open_ |> open_ ~m:"TzPervasives" - |> open_ ~m:"TzPervasives.Error_monad.Legacy_monad_globals"; + octez_base |> open_ |> open_ ~m:"TzPervasives"; Protocol.(octez_sc_rollup_layer2 alpha |> if_some |> open_); Protocol.(main alpha) |> open_; Protocol.(octez_sc_rollup_node alpha) |> if_some; @@ -7519,8 +7512,7 @@ let _sc_sequencer_node = ~with_macos_security_framework:true ~deps: [ - octez_base |> open_ |> open_ ~m:"TzPervasives" - |> open_ ~m:"TzPervasives.Error_monad.Legacy_monad_globals"; + octez_base |> open_ |> open_ ~m:"TzPervasives"; octez_clic; octez_client_base |> open_; octez_client_base_unix |> open_; diff --git a/src/bin_sequencer_node/dune b/src/bin_sequencer_node/dune index 270c52c4dee1068f592b81572ad4d6a0625c6991..ab8b306e86307b5d4da7e2f9f23d9552ed180949 100644 --- a/src/bin_sequencer_node/dune +++ b/src/bin_sequencer_node/dune @@ -24,7 +24,6 @@ (:standard) -open Tezos_base -open Tezos_base.TzPervasives - -open Tezos_base.TzPervasives.Error_monad.Legacy_monad_globals -open Tezos_client_base -open Tezos_client_base_unix -open Tezos_client_commands diff --git a/src/lib_crawler/dune b/src/lib_crawler/dune index 44d5460e39f36d944438dd11b237da43bc5e9c5d..cb6d0801041044021f9eb67d701e84030bcd3342 100644 --- a/src/lib_crawler/dune +++ b/src/lib_crawler/dune @@ -15,7 +15,6 @@ (flags (:standard) -open Tezos_base.TzPervasives - -open Tezos_base.TzPervasives.Error_monad.Legacy_monad_globals -open Tezos_base -open Tezos_rpc_http -open Tezos_stdlib_unix diff --git a/src/lib_crawler/layer_1.ml b/src/lib_crawler/layer_1.ml index 518f2a1dd736867f39504fcd0767de483168d829..c508589f1dacba4a61ac1bdcbfa6b2ccbb498531 100644 --- a/src/lib_crawler/layer_1.ml +++ b/src/lib_crawler/layer_1.ml @@ -177,7 +177,7 @@ let iter_heads l1_ctxt f = in Lwt.catch (fun () -> Lwt.no_cancel @@ loop l1_ctxt) - (function Iter_error e -> Lwt.return_error e | exn -> fail (Exn exn)) + (function Iter_error e -> Lwt.return_error e | exn -> fail_with_exn exn) let wait_first l1_ctxt = let rec loop l1_ctxt = diff --git a/src/lib_injector/disk_persistence.ml b/src/lib_injector/disk_persistence.ml index 200a04899376a28419b2754b3b77eff9bb950814..e5f8089697b1fd922a700ee511d87a0af46bfdcd 100644 --- a/src/lib_injector/disk_persistence.ml +++ b/src/lib_injector/disk_persistence.ml @@ -151,28 +151,29 @@ let create_dir dir = return_unit let read_value file encoding = - let open Lwt_syntax in + let open Lwt_result_syntax in trace (Cannot_read_file file) @@ Lwt.catch (fun () -> Lwt_io.with_file ~flags:[Unix.O_RDONLY; O_CLOEXEC] ~mode:Input file @@ fun channel -> - let+ bytes = Lwt_io.read channel in - Result.map_error (fun e -> [Decoding_error e]) - @@ Data_encoding.Binary.of_bytes - encoding - (Bytes.unsafe_of_string bytes)) + let*! bytes = Lwt_io.read channel in + let*? v = + Result.map_error (fun e -> [Decoding_error e]) + @@ Data_encoding.Binary.of_bytes + encoding + (Bytes.unsafe_of_string bytes) + in + return v) (function - | Unix.Unix_error (e, _, _) -> fail (Unix_error e) | e -> fail (Exn e)) + | Unix.Unix_error (e, _, _) -> tzfail (Unix_error e) + | e -> fail_with_exn e) let maybe_read_value ~warn file encoding = let open Lwt_syntax in let* v = read_value file encoding in - match v with - | Error e -> - let+ () = warn file e in - None - | Ok v -> return_some v + let* () = Result.iter_error_s (warn file) v in + return (Result.to_option v) let write_value file encoding value = trace (Cannot_write_file file) diff --git a/src/lib_injector/dune b/src/lib_injector/dune index 29183b8723669486bef56517cd5e2a63e4b99ed9..35314fb771bfacbbdfaa8990b179eea575d6d480 100644 --- a/src/lib_injector/dune +++ b/src/lib_injector/dune @@ -19,7 +19,6 @@ (flags (:standard) -open Tezos_base.TzPervasives - -open Tezos_base.TzPervasives.Error_monad.Legacy_monad_globals -open Tezos_base -open Tezos_stdlib_unix -open Tezos_micheline diff --git a/src/lib_injector/injector_functor.ml b/src/lib_injector/injector_functor.ml index 2aa820d2f7a7942a9553aec5990578d74b0d9eef..24e84da0da50b3c38749a477f038e3f706a2f3cc 100644 --- a/src/lib_injector/injector_functor.ml +++ b/src/lib_injector/injector_functor.ml @@ -692,11 +692,12 @@ module Make (Parameters : PARAMETERS) = struct state.signer.sk Unsigned_op.value in - Tezos_shell_services.Shell_services.Injection.operation - state.cctxt - ~chain:state.cctxt#chain - signed_op_bytes - >>=? fun oph -> + let* oph = + Tezos_shell_services.Shell_services.Injection.operation + state.cctxt + ~chain:state.cctxt#chain + signed_op_bytes + in let*! () = Event.(emit2 injected) state nb oph in return oph @@ -797,10 +798,11 @@ module Make (Parameters : PARAMETERS) = struct List.rev rev_ops (* Ignore operations that are allowed to fail. *) - let ignore_ignorable_failing_operations state operations = function + let ignore_ignorable_failing_operations state operations = + let open Lwt_result_syntax in + function | Ok res -> return (`Injected res) | Error err -> - let open Lwt_result_syntax in let+ operations_to_drop = List.fold_left_es (fun to_drop op -> @@ -1471,22 +1473,24 @@ module Make (Parameters : PARAMETERS) = struct return_unit let worker_of_signer signer_pkh = + let open Result_syntax in match Worker.find_opt table signer_pkh with | None -> (* TODO: https://gitlab.com/tezos/tezos/-/issues/2818 maybe lazily start worker here *) - error (No_worker_for_source signer_pkh) - | Some worker -> ok worker + tzfail (No_worker_for_source signer_pkh) + | Some worker -> return worker let worker_of_tag tag = + let open Result_syntax in match Tags_table.find_opt tags_table tag with | None -> Format.kasprintf - (fun s -> error (No_worker_for_tag s)) + (fun s -> tzfail (No_worker_for_tag s)) "%a" Parameters.Tag.pp tag - | Some worker -> ok worker + | Some worker -> return worker let add_pending_operation ?source op = let open Lwt_result_syntax in diff --git a/src/lib_scoru_sequencer/dune b/src/lib_scoru_sequencer/dune index e15cae69fa9a7b6aca214a6899006191241ed8e9..cddccfa20fbf2511a14c58843c87c030043a387d 100644 --- a/src/lib_scoru_sequencer/dune +++ b/src/lib_scoru_sequencer/dune @@ -20,7 +20,6 @@ (:standard) -open Tezos_base -open Tezos_base.TzPervasives - -open Tezos_base.TzPervasives.Error_monad.Legacy_monad_globals -open Tezos_smart_rollup_layer2_alpha -open Tezos_protocol_alpha -open Tezos_workers diff --git a/src/lib_scoru_sequencer/rpc_server.ml b/src/lib_scoru_sequencer/rpc_server.ml index 8f3e6bd134bf2457a819661360f3249bfacbec2d..95236ebbed622376501520161078697b33ace848 100644 --- a/src/lib_scoru_sequencer/rpc_server.ml +++ b/src/lib_scoru_sequencer/rpc_server.ml @@ -35,7 +35,7 @@ module Local_directory = Make_directory (struct type subcontext = unit - let context_of_prefix _ll_node_ctxt () = return () + let context_of_prefix _ll_node_ctxt () = Lwt_result_syntax.return_unit end) (* Register server handlers *) diff --git a/src/lib_scoru_sequencer/seq_batcher.ml b/src/lib_scoru_sequencer/seq_batcher.ml index dcaa70d5661f42645eefd5bc5acfb8388e4d2954..bddb569f604d2259e90883f61919ab2b6c9f6ec8 100644 --- a/src/lib_scoru_sequencer/seq_batcher.ml +++ b/src/lib_scoru_sequencer/seq_batcher.ml @@ -304,10 +304,11 @@ let init _conf ~signer node_ctxt = (* This is a batcher worker for a single scoru *) let worker = + let open Result_syntax in lazy (match Lwt.state worker_promise with - | Lwt.Return worker -> ok worker - | Lwt.Fail _ | Lwt.Sleep -> error Sc_rollup_node_errors.No_batcher) + | Lwt.Return worker -> return worker + | Lwt.Fail _ | Lwt.Sleep -> tzfail Sc_rollup_node_errors.No_batcher) let handle_request_error rq = let open Lwt_syntax in diff --git a/src/lib_smart_rollup/dune b/src/lib_smart_rollup/dune index 7924ffa64331529abc51db6bb523daa2601801a5..780eb1767e5684876ddd621f3320a34186ff9bd3 100644 --- a/src/lib_smart_rollup/dune +++ b/src/lib_smart_rollup/dune @@ -14,7 +14,6 @@ (flags (:standard) -open Tezos_base.TzPervasives - -open Tezos_base.TzPervasives.Error_monad.Legacy_monad_globals -open Tezos_base -open Tezos_stdlib_unix -open Tezos_crypto))