Skip to content

ProblemDetailsMiddleware::attachListener does also allow object&callable #43

Description

@boesing

Bug Report

Q A
Version(s) 1.11.0

Summary

ProblemDetailsMiddleware::attachListener does also allow object&callable

Current behavior

Argument 1 of Mezzio\ProblemDetails\ProblemDetailsMiddleware::attachListener expects callable(Throwable, Psr\Http\Message\RequestInterface, Psr\Http\Message\ResponseInterface):void, but parent type Application\ProblemDetails\NonProblemResponseListener provided

How to reproduce

use Mezzio\ProblemDetails\Exception\ProblemDetailsExceptionInterface;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Throwable;

final class Foo
{
   public function __invoke(Throwable $error, ServerRequestInterface $request, ResponseInterface $response): void
   {}
}

/** @var Mezzio\ProblemDetails\ProblemDetailsMiddleware $middleware */
$middleware = null;
$middleware->attachListener(new Foo());

Expected behavior

No psalm error.

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugSomething isn't working

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions