src/Debug/Internal.php
public function publishBubbleEvent($eventName, $eventOrSubject, array $values = array())
    {
        if ($eventOrSubject instanceof Event) {
            $event = $eventOrSubject;
        } else {
            $event = new Event($eventOrSubject, $values);
        }
        $debug = $this->debug;
        while (!$event->isPropagationStopped()) {
            $debug->eventManager->publish($eventName, $event);
            if (!$debug->parentInstance) {
                break;
            }
            $debug = $debug->parentInstance;
        }
        return $event;
    }
public function publishBubbleEvent($eventName, $eventOrSubject, array $values = array())
    {
        if ($eventOrSubject instanceof Event) {
            $event = $eventOrSubject;
        } else {
            $event = new Event($eventOrSubject, $values);
        }
        $debug = $this->debug;
        while (!$event->isPropagationStopped()) {
            $debug->eventManager->publish($eventName, $event);
            if (!$debug->parentInstance) {
                break;
            }
            $debug = $debug->parentInstance;
        }
        return $event;
    }
Publish/Trigger/Dispatch event
Event will get published on ancestor channels if propagation not stopped

@param string $eventName      event name
@param mixed  $eventOrSubject passed to subscribers
@param array  $values         values to attach to event

@return mixed