···8888 let key = truncate key in
8989 let value = truncate value in
9090 let db = Sqlite.in_memory () in
9191- try Sqlite.put db key value with _ -> ()
9191+ try Sqlite.put db key value with _exn -> ()
92929393(** Get must not crash on arbitrary key. *)
9494let test_get_crash key =
9595 let key = truncate key in
9696 let db = Sqlite.in_memory () in
9797- try ignore (Sqlite.find db key) with _ -> ()
9797+ try ignore (Sqlite.find db key) with _exn -> ()
98989999(** Delete must not crash on arbitrary key. *)
100100let test_delete_crash key =
101101 let key = truncate key in
102102 let db = Sqlite.in_memory () in
103103- try Sqlite.delete db key with _ -> ()
103103+ try Sqlite.delete db key with _exn -> ()
104104105105(** Mem must not crash on arbitrary key. *)
106106let test_mem_crash key =
107107 let key = truncate key in
108108 let db = Sqlite.in_memory () in
109109- try ignore (Sqlite.mem db key) with _ -> ()
109109+ try ignore (Sqlite.mem db key) with _exn -> ()
110110111111(* Boundary conditions *)
112112
+3-3
lib/sqlite.ml
···6868 if dir <> "." && dir <> "/" then Some Eio.Path.(fs / dir) else None
6969 in
7070 Option.iter
7171- (fun p -> try Eio.Path.mkdirs ~exists_ok:true ~perm:0o755 p with _ -> ())
7171+ (fun p ->
7272+ try Eio.Path.mkdirs ~exists_ok:true ~perm:0o755 p with Eio.Io _ -> ())
7273 parent;
7374 (* Create new database file (truncates if exists) *)
7475 let file =
···162163 name
163164164165 let create parent ~name =
165165- if not (valid_name name) then
166166- invalid_arg (Fmt.str "Invalid table name: %S" name);
166166+ if not (valid_name name) then Fmt.invalid_arg "Invalid table name: %S" name;
167167 match Hashtbl.find_opt parent.tables name with
168168 | Some (index, _) -> { parent; name; index }
169169 | None ->
+4-4
test/test_sqlite.ml
···88 let fs = Eio.Stdenv.fs env in
99 let cwd = Eio.Stdenv.cwd env in
1010 let tmp_dir = Eio.Path.(cwd / "_build" / "test_sqlite") in
1111- (try Eio.Path.mkdirs ~exists_ok:true ~perm:0o755 tmp_dir with _ -> ());
1111+ (try Eio.Path.mkdirs ~exists_ok:true ~perm:0o755 tmp_dir with Eio.Io _ -> ());
1212 let path =
1313 Eio.Path.(tmp_dir / Printf.sprintf "test_%d.db" (Random.int 1_000_000))
1414 in
···258258 Eio_main.run @@ fun env ->
259259 let cwd = Eio.Stdenv.cwd env in
260260 let tmp_dir = Eio.Path.(cwd / "_build" / "test_sqlite") in
261261- (try Eio.Path.mkdirs ~exists_ok:true ~perm:0o755 tmp_dir with _ -> ());
261261+ (try Eio.Path.mkdirs ~exists_ok:true ~perm:0o755 tmp_dir with Eio.Io _ -> ());
262262 let path =
263263 Eio.Path.(tmp_dir / Printf.sprintf "persist_%d.db" (Random.int 1_000_000))
264264 in
···281281 Eio_main.run @@ fun env ->
282282 let cwd = Eio.Stdenv.cwd env in
283283 let tmp_dir = Eio.Path.(cwd / "_build" / "test_sqlite") in
284284- (try Eio.Path.mkdirs ~exists_ok:true ~perm:0o755 tmp_dir with _ -> ());
284284+ (try Eio.Path.mkdirs ~exists_ok:true ~perm:0o755 tmp_dir with Eio.Io _ -> ());
285285 let path =
286286 Eio.Path.(
287287 tmp_dir / Printf.sprintf "persist_del_%d.db" (Random.int 1_000_000))
···306306 Eio_main.run @@ fun env ->
307307 let cwd = Eio.Stdenv.cwd env in
308308 let tmp_dir = Eio.Path.(cwd / "_build" / "test_sqlite") in
309309- (try Eio.Path.mkdirs ~exists_ok:true ~perm:0o755 tmp_dir with _ -> ());
309309+ (try Eio.Path.mkdirs ~exists_ok:true ~perm:0o755 tmp_dir with Eio.Io _ -> ());
310310 let path =
311311 Eio.Path.(
312312 tmp_dir / Printf.sprintf "persist_tbl_%d.db" (Random.int 1_000_000))