From 68cc7d79b3b0e98c71da8ee2615344fdd0c029d5 Mon Sep 17 00:00:00 2001 From: Enzo Innocenzi Date: Fri, 13 Feb 2026 14:51:06 +0100 Subject: [PATCH] fix(router): render all development exceptions with Tempest's view renderer --- packages/router/src/GenericResponseSender.php | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/packages/router/src/GenericResponseSender.php b/packages/router/src/GenericResponseSender.php index 472f46051..45a8e3842 100644 --- a/packages/router/src/GenericResponseSender.php +++ b/packages/router/src/GenericResponseSender.php @@ -19,8 +19,10 @@ use Tempest\Http\Responses\File; use Tempest\Http\ServerSentEvent; use Tempest\Http\ServerSentMessage; +use Tempest\Router\Exceptions\DevelopmentException; use Tempest\Support\Arr; use Tempest\Support\Json; +use Tempest\View\Renderers\TempestViewRenderer; use Tempest\View\View; use Tempest\View\ViewRenderer; @@ -104,7 +106,7 @@ private function sendContent(Response $response): void } elseif (is_array($body) || $body instanceof JsonSerializable) { echo json_encode($body); } elseif ($body instanceof View) { - echo $this->viewRenderer->render($body); + $this->renderView($response); } else { echo $body; } @@ -112,6 +114,15 @@ private function sendContent(Response $response): void ob_flush(); } + private function renderView(Response $response): void + { + if ($response instanceof DevelopmentException) { + echo $this->container->get(TempestViewRenderer::class)->render($response->body); + } else { + echo $this->viewRenderer->render($response->body); + } + } + private function sendEventStream(EventStream $response): void { if (ob_get_level() > 0) {