(
        self, timestamp: arrow.Arrow, retry_on_broken_pipe: bool = True,
    )
Compute a signal and return either a single response (representing an aggregate resource request), or a
        list of responses (representing per-pod resource requests)

        :param timestamp: a Unix timestamp to pass to the signal as the "current time"
        :param retry_on_broken_pipe: if the signal socket pipe is broken, restart the signal process and try again
        :returns: a dict of resource_name -> requested resources from the signal
        :raises SignalConnectionError: if the signal connection fails for some reason
Compute a signal and return either a single response (representing an aggregate resource request), or a
        list of responses (representing per-pod resource requests)
Compute a signal and return either a single response ( representing an aggregate resource request ) or a list of responses ( representing per - pod resource requests )
def evaluate(
        self, timestamp: arrow.Arrow, retry_on_broken_pipe: bool = True,
    ) -> Union[SignalResourceRequest, List[KubernetesPod]]:  # pragma: no cover
        """ Compute a signal and return either a single response (representing an aggregate resource request), or a
        list of responses (representing per-pod resource requests)

        :param timestamp: a Unix timestamp to pass to the signal as the "current time"
        :param retry_on_broken_pipe: if the signal socket pipe is broken, restart the signal process and try again
        :returns: a dict of resource_name -> requested resources from the signal
        :raises SignalConnectionError: if the signal connection fails for some reason
        """
        pass
def evaluate ( self , timestamp : arrow . Arrow , retry_on_broken_pipe : bool = True , ) -> Union [ SignalResourceRequest , List [ KubernetesPod ] ] : # pragma: no cover pass