# Functions
AsyncScheduler returns a scheduler that executes handlers in new goroutines.
ClientLogging creates client middleware that logs request and response information at the given level.
ClientMetrics creates client middleware that records metrics about all requests.
DefaultAsyncErrorCallback logs errors.
DefaultContextDeriver copies the logger from the request's context to a new context.
DefaultErrorCallback logs errors and responds with an appropriate status code.
DefaultResponseCallback responds with a 200 OK for handled events and a 202 Accepted status for all other events.
DefaultScheduler returns a scheduler that executes handlers in the go routine of the caller and returns any error.
GetInstallationIDFromEvent returns the installation ID from a GitHub webhook event payload.
GetResponder returns the response function that was set by an event handler.
InitializeResponder prepares the context to work with SetResponder and GetResponder.
LogRateLimitInformation defines which rate limit information like the number of requests remaining in the current rate limit window is getting logged.
LogRequestBody enables request body logging for requests to paths matching any of the regular expressions in patterns.
LogResponseBody enables response body logging for requests to paths matching any of the regular expressions in patterns.
MetricsAsyncErrorCallback logs errors and increments an error counter.
MetricsErrorCallback logs errors, increments an error counter, and responds with an appropriate status code.
NewCachingClientCreator returns a ClientCreator that creates a GitHub client for installations of the app specified by the provided arguments.
NewCachingInstallationsService returns an InstallationsService that always queries GitHub.
NewClientCreator returns a ClientCreator that creates a GitHub client for installations of the app specified by the provided arguments.
NewDefaultCachingClientCreator returns a ClientCreator using values from the configuration or other defaults.
NewDefaultEventDispatcher is a convenience method to create an event dispatcher from configuration using the default error and response callbacks.
NewEventDispatcher creates an http.Handler that dispatches GitHub webhook requests to the appropriate event handlers.
NewInstallationsService returns an InstallationsService that always queries GitHub.
PreparePRContext adds information about a pull request to the logger in a context and returns the modified context and logger.
PrepareRepoContext adds information about a repository to the logger in a context and returns the modified context and logger.
QueueAsyncScheduler returns a scheduler that executes handlers in a fixed number of worker goroutines.
SetResponder sets a function that sends a response to GitHub after event processing completes.
WithAsyncErrorCallback sets the error callback for an asynchronous scheduler.
WithClientCaching sets an HTTP cache for all created clients using the provided cache implementation If alwaysValidate is true, the cache validates all saved responses before returning them.
WithClientMiddleware adds middleware that is applied to all created clients.
WithClientTimeout sets a request timeout for requests made by all created clients.
WithClientUserAgent sets the base user agent for all created clients.
WithContextDeriver sets the context deriver for an asynchronous scheduler.
WithErrorCallback sets the error callback for a dispatcher.
WithResponseCallback sets the response callback for an event dispatcher.
WithScheduler sets the scheduler used to process events.
WithSchedulingMetrics enables metrics reporting for schedulers.
WithTransport sets the http.RoundTripper used to make requests.
# Constants
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
# Variables
No description provided by the author
HandlerRecoverStackDepth is the max depth of stack trace to recover on a handler panic.
# Structs
No description provided by the author
Dispatch is a webhook payload and the handler that handles it.
HandlerPanicError is an error created from a recovered handler panic.
Installation is a minimal representation of a GitHub app installation.
RateLimitLoggingOption controls which rate limit information is logged.
ValidationError is passed to error callbacks when the webhook payload fails validation.
# Interfaces
No description provided by the author
No description provided by the author
InstallationSource is implemented by GitHub webhook event payload types.
InstallationsService retrieves installation information for a given app.
Scheduler is a strategy for executing event handlers.
# Type aliases
AsyncErrorCallback is called by an asynchronous scheduler when an event handler returns an error or panics.
ClientLoggingOption controls behavior of client request logs.
ClientMiddleware modifies the transport of a GitHub client to add common functionality, like logging or metrics collection.
No description provided by the author
ContextDeriver creates a new independent context from a request's context.
DispatcherOption configures properties of an event dispatcher.
ErrorCallback is called when an event handler returns an error.
InstallationNotFound is returned when no installation exists for a specific owner or repository.
ResponseCallback is called to send a response to GitHub after an event is handled.
SchedulerOption configures properties of a scheduler.