| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2026-07-15 | 3.4 kB | |
| v5.0.0 source code.tar.gz | 2026-07-15 | 2.4 MB | |
| v5.0.0 source code.zip | 2026-07-15 | 2.6 MB | |
| Totals: 3 Items | 5.0 MB | 0 | |
Major Changes
- d284e69: Drop Node.js 18 support. The minimum required runtime is now Node.js 20 (npm >=9.6.4).
- d284e69: Remove deprecated
WorkflowStepclass and all associated types, middleware, and utilities. UseCustomFunctionandapp.function()instead. - d284e69: Replace axios with native fetch for response_url calls. Remove
agentandclientTlsoptions fromAppOptions— useclientOptions.fetchto provide a custom fetch implementation for proxy/TLS needs. Add adispatcheroption toSocketModeReceiverfor proxy/TLS configuration in socket mode.
respond() now throws a RespondError when the response_url request returns a non-2xx status (restoring the throw-on-failure behavior that axios provided) and resolves to a Response on success rather than an axios response object.
Minor Changes
- d284e69: Improve error handling by leveraging
@slack/web-apiv8 error classes. Authorization errors are now properly wrapped in anAuthorizationError, preserving the original thrown value (non-Errorrejections are retained via thecauseof the wrapped original). Default error handlers log richer details for web-api errors (API error codes, rate limit durations, HTTP status codes) alongside the full error object, so stack traces and causes remain available. The@slack/web-apierror classes (SlackError,WebAPIPlatformError,WebAPIRequestError,WebAPIHTTPError,WebAPIRateLimitedError) can be imported from@slack/web-apiforinstanceofchecks.
Patch Changes
- 9839a50: Pass the App's named
bolt-appConsoleLoggerto the default receivers when nologgeroption is provided. Previously the App constructor built a named logger onthis.loggerbut threaded the raw (potentially undefined) constructor argument intoinitReceiver, soHTTPReceiver/SocketModeReceivereach built their own anonymous logger and receiver-side log lines (e.g. unhandled HTTP requests on custom routes) appeared without thebolt-appprefix.
Behaviour change for the no-logger case: the default receiver now shares the same Logger instance as app.logger, so a downstream app.logger.setLevel(...) after construction will affect receiver-side logging too. This is consistent with the existing behaviour that already mutates this.logger's level via the logLevel constructor option. Apps that supplied their own logger are unaffected; apps that relied on the receiver's logger being independent of app.logger will need to pass a separate logger into the receiver explicitly.
- e1c21d7: Fix
AwsLambdaReceiver.toHandler()so Bolt apps on the AWS Lambda Node.js 24+ runtime no longer fail at startup withRuntime.CallbackHandlerDeprecated. The returned handler is now a 2-arg promise-based function; the unused trailingcallbackparameter has been removed from theAwsHandlertype. The legacyAwsCallbackexport is retained and marked@deprecated. - f2de079: Add
context_team_idandcontext_enterprise_idas optional fields on theEnvelopedEventtype. Slack's Events API delivers these on the envelope for Slack Connect channels and Enterprise Grid org-wide apps, whereteam_idmay refer to a workspace different from the one the bot is installed in. Without the typed fields, downstream code had to reach for@ts-expect-erroror unsafe casts to route by the correct workspace.