Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -177,6 +177,7 @@
"hypervel/foundation": "self.version",
"hypervel/grpc": "self.version",
"hypervel/hashing": "self.version",
"hypervel/head": "self.version",
"hypervel/horizon": "self.version",
"hypervel/http": "self.version",
"hypervel/http-server": "self.version",
Expand Down Expand Up @@ -266,6 +267,7 @@
"Hypervel\\Foundation\\": "src/foundation/src/",
"Hypervel\\Grpc\\": "src/grpc/src/",
"Hypervel\\Hashing\\": "src/hashing/src/",
"Hypervel\\Head\\": "src/head/src/",
"Hypervel\\Horizon\\": "src/horizon/src/",
"Hypervel\\HttpServer\\": "src/http-server/src/",
"Hypervel\\Http\\": "src/http/src/",
Expand Down Expand Up @@ -378,6 +380,7 @@
"hypervel": {
"aliases": {
"Feature": "Hypervel\\Pennant\\Feature",
"Head": "Hypervel\\Head\\Facades\\Head",
"Mcp": "Hypervel\\Mcp\\Facades\\Mcp",
"OpenTelemetry": "Hypervel\\OpenTelemetry\\Facades\\OpenTelemetry",
"Saloon": "Hypervel\\Saloon\\Facades\\Saloon",
Expand All @@ -401,6 +404,7 @@
"Hypervel\\Events\\EventServiceProvider",
"Hypervel\\Filesystem\\FilesystemServiceProvider",
"Hypervel\\Hashing\\HashingServiceProvider",
"Hypervel\\Head\\HeadServiceProvider",
"Hypervel\\Horizon\\HorizonServiceProvider",
"Hypervel\\Http\\HttpServiceProvider",
"Hypervel\\Image\\ImageServiceProvider",
Expand Down
394 changes: 394 additions & 0 deletions docs/plans/2026-10-21-head-port.md

Large diffs are not rendered by default.

2 changes: 2 additions & 0 deletions phpstan.neon.dist
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
includes:
- src/database/extension.neon
- src/foundation/extension.neon
- src/head/extension.neon
- src/scout/extension.neon

parameters:
Expand All @@ -27,6 +28,7 @@ parameters:
- vendor/swoole/ide-helper/src/swoole/Swoole/Server.php
excludePaths:
- %currentWorkingDirectory%/src/helper/*
- %currentWorkingDirectory%/src/head/_ide_helper.php
- %currentWorkingDirectory%/tests/*
- %currentWorkingDirectory%/src/testbench/hypervel/*
- %currentWorkingDirectory%/src/testbench/workbench/*
Expand Down
2 changes: 2 additions & 0 deletions phpstan.types.neon.dist
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
includes:
- src/database/extension.neon
- src/foundation/extension.neon
- src/head/extension.neon
- src/scout/extension.neon

parameters:
Expand All @@ -9,6 +10,7 @@ parameters:
scanDirectories:
- src/database/src/PHPStan
- src/foundation/src/PHPStan
- src/head/src/PHPStan
- src/scout/src/PHPStan
paths:
- types
1 change: 1 addition & 0 deletions src/docs/documentation.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,7 @@
- [API Client](/docs/{{version}}/api-client)
- [Fortify](/docs/{{version}}/fortify)
- [gRPC](/docs/{{version}}/grpc)
- [Head](/docs/{{version}}/head)
- [Horizon](/docs/{{version}}/horizon)
- [Inertia](/docs/{{version}}/inertia)
- [Nested Set](/docs/{{version}}/nested-set)
Expand Down
18 changes: 18 additions & 0 deletions src/docs/errors.md
Original file line number Diff line number Diff line change
Expand Up @@ -322,6 +322,24 @@ use Symfony\Component\HttpFoundation\Response;
})
```

If a package or application needs to inspect the prepared response without replacing your `respond` callback, register a `beforeResponding` callback during boot:

```php
use Hypervel\Foundation\Configuration\Exceptions;
use Hypervel\Support\Facades\Log;
use Symfony\Component\HttpFoundation\Response;

->withExceptions(function (Exceptions $exceptions): void {
$exceptions->beforeResponding(function (Response $response): void {
Log::debug('Exception response prepared.', [
'status' => $response->getStatusCode(),
]);
});
})
```

These callbacks run in registration order, just before your `respond` callback. They receive the response, exception, and request; their return values are ignored. Callbacks are shared by every request in the worker, so read request-specific values inside the callback. Packages may register one from a service provider's `boot` method using the `Hypervel\Support\Facades\Exceptions::beforeResponding()` facade method.

<a name="renderable-exceptions"></a>
### Reportable and Renderable Exceptions

Expand Down
Loading
Loading