Commitebb5b9edRecorded24 Oct 2026Repositoryfolio

Use the exported channel-send and channel-receive APIs

Changed
 src/folio/tools.sgl                |  8 ++++----
 test/test-writer-serialization.sgl | 14 +++++++-------
 2 files changed, 11 insertions(+), 11 deletions(-)
Diff
src/folio/tools.sglmodified
@@ -2192,10 +2192,10 @@
2192
(define writers (make-channel 1))
2193
(define (serialize-writer handler)
2194
(lambda (args)
−2195
(receive writers)
−2196
(guard (exn (else (send writers #t) (raise exn)))
+2195
(channel-receive writers)
+2196
(guard (exn (else (channel-send writers #t) (raise exn)))
2197
(let ((result (handler args)))
−2198
(send writers #t)
+2198
(channel-send writers #t)
2199
result))))
2200
(define (register! name description schema handler)
2201
(let ((safe-handler
@@ -2206,7 +2206,7 @@
2206
safe-handler
2207
(serialize-writer safe-handler)))))
2208
−2209
(send writers #t)
+2209
(channel-send writers #t)
2210
2211
;; Inbox
2212
(register!
test/test-writer-serialization.sglmodified
@@ -33,16 +33,16 @@
33
(jsonrpc-request id: id method: "tools/call"
34
params: (dict name: "folio/note-edit"
35
arguments: (dict name: "writer" append: marker))))))
−36
(send done reply)))
+36
(channel-send done reply)))
37
(register-folio-tools! server store idx)
38
(with-async
39
(go
40
(with-index-transaction idx
41
(lambda ()
−42
(send ready #t)
−43
(receive release))))
+42
(channel-send ready #t)
+43
(channel-receive release))))
44
(go
−45
(receive ready)
+45
(channel-receive ready)
46
(go (append! 1 "first-marker\n"))
47
(let wait ((attempt 0))
48
(unless (or (string-contains? (read-file-string file) "first-marker")
@@ -53,9 +53,9 @@
53
(go (append! 2 "second-marker\n"))
54
(sleep 0.1)
55
(set! second-waited? (not (string-contains? (read-file-string file) "second-marker")))
−56
(send release #t)
−57
(assert-true (jsonrpc-response? (receive done)))
−58
(assert-true (jsonrpc-response? (receive done)))))
+56
(channel-send release #t)
+57
(assert-true (jsonrpc-response? (channel-receive done)))
+58
(assert-true (jsonrpc-response? (channel-receive done)))))
59
(assert-true first-visible?)
60
(assert-true second-waited?)
61
(let ((content (read-file-string file)))