Skip to content

Commit da0b2c4

Browse files
fix: use closure-typed HandlerAsync for middleware in Nim 2.0
Nim 2.0 doesn't implicitly convert top-level procs to closures. Prologue's use() expects HandlerAsync (closure type), so declaring the middleware as a let variable typed HandlerAsync forces the proc to be a closure.
1 parent 6e349b3 commit da0b2c4

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

frameworks/prologue/src/server.nim

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -242,11 +242,11 @@ let settings = newSettings(
242242

243243
var app = newApp(settings = settings)
244244

245-
proc addServerHeader(ctx: Context) {.async.} =
245+
let serverHeaderMiddleware: HandlerAsync = proc(ctx: Context) {.async.} =
246246
ctx.response.setHeader("Server", "prologue")
247247
await switch(ctx)
248248

249-
app.use(addServerHeader)
249+
app.use(serverHeaderMiddleware)
250250

251251
app.addRoute("/pipeline", pipelineHandler, HttpGet)
252252
app.addRoute("/baseline11", baseline11Handler, HttpGet)

0 commit comments

Comments
 (0)