From 3c4dbf3ad09ab8f4f6f0606c3cd4cb71911a09e3 Mon Sep 17 00:00:00 2001 From: Hare Date: Fri, 2 Oct 2026 06:56:42 +0900 Subject: [PATCH] fix: use typed method allowance --- crates/wip-fs-server/src/server.rs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/crates/wip-fs-server/src/server.rs b/crates/wip-fs-server/src/server.rs index d8ea4c4..d1a99a2 100644 --- a/crates/wip-fs-server/src/server.rs +++ b/crates/wip-fs-server/src/server.rs @@ -259,9 +259,14 @@ impl WipFsServer { fn metadata_error(&self, error: RequestMetadataError) -> Response> { match error { RequestMetadataError::NotFound => empty_response(StatusCode::NOT_FOUND), - RequestMetadataError::MethodNotAllowed => Response::builder() - .status(StatusCode::METHOD_NOT_ALLOWED) - .header(ALLOW, "POST") + error @ RequestMetadataError::MethodNotAllowed => Response::builder() + .status(error.status()) + .header( + ALLOW, + error + .allow() + .expect("method-not-allowed metadata has an Allow value"), + ) .body(Vec::new()) .expect("static method response is valid"), RequestMetadataError::UnsupportedMediaType => {