Skip to content

chore(deps): bump @slack/web-api from 7.16.0 to 8.0.0 - #231

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/slack/web-api-8.0.0
Open

chore(deps): bump @slack/web-api from 7.16.0 to 8.0.0#231
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/slack/web-api-8.0.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 27, 2026

Copy link
Copy Markdown
Contributor

Bumps @slack/web-api from 7.16.0 to 8.0.0.

Release notes

Sourced from @​slack/web-api's releases.

@​slack/web-api@​8.0.0

Major Changes

  • fc98c8c: Drop Node.js 18 support. The minimum supported Node.js version is now 20.

  • fc98c8c: Redesigned error handling to use proper Error subclasses instead of plain objects with a code property.

    Migration: Replace if (error.code === ErrorCode.PlatformError) with if (error instanceof WebAPIPlatformError). All error classes extend a common SlackError base class (which extends Error), so you can also catch all SDK errors with if (error instanceof SlackError).

    New error class hierarchy:

    • SlackError (abstract base)
      • WebAPIPlatformError — Slack API returned ok: false
      • WebAPIRequestError — Network/transport failure (original error in cause)
      • WebAPIHTTPError — Non-200 HTTP status from Slack
      • WebAPIRateLimitedError — HTTP 429 with retryAfter seconds
      • WebAPIFileUploadInvalidArgumentsError — Invalid file upload arguments
      • WebAPIFileUploadReadFileDataError — Failed to read file data for upload

    Removed factory functions (these were internal but exported — use new with the corresponding class instead):

    • errorWithCode()
    • platformErrorFromResult()new WebAPIPlatformError(...)
    • requestErrorWithOriginal()new WebAPIRequestError(...)
    • httpErrorFromResponse()new WebAPIHTTPError(...)
    • rateLimitedErrorWithDelay()new WebAPIRateLimitedError(...)

    Other breaking type changes:

    • WebAPIHTTPError.headers type changed from IncomingHttpHeaders to Record<string, string>.
    • The CodedError interface is deprecated — use instanceof checks with specific error classes instead.
    • Error .name values changed from generic 'Error' to descriptive class names (e.g., 'WebAPIPlatformError').
  • fc98c8c: Replaced axios with the standard Fetch API for all HTTP transport. The following options and types have been removed from WebClientOptions:

    • agent — Use the new fetch option to provide a custom fetch implementation with proxy or keep-alive support. For proxies, prefer the built-in http.setGlobalProxyFromEnv() or NODE_USE_ENV_PROXY=1 (Node.js 24+). For advanced use cases:
      import { fetch, Agent } from "undici";
      const client = new WebClient(token, {
        fetch: (url, init) =>
          fetch(url, {
            ...init,
            dispatcher: new Agent({ keepAliveTimeout: 60_000 }),
          }),
      });
    • tls and TLSOptions — Configure TLS via a custom fetch implementation with an undici Agent, or use the NODE_EXTRA_CA_CERTS environment variable.
    • requestInterceptor and RequestInterceptor type — Wrap the fetch function to intercept or modify requests before they are sent.
    • adapter and AdapterConfig type — Use the fetch option instead.
    • RequestConfig type (was an alias for Axios' InternalAxiosRequestConfig) — Removed entirely.
    • attachOriginalToWebAPIRequestError option — Removed. The original error is now always available via the standard cause property on WebAPIRequestError.

... (truncated)

Commits

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Jul 27, 2026
Bumps [@slack/web-api](https://github.com/slackapi/node-slack-sdk) from 7.16.0 to 8.0.0.
- [Release notes](https://github.com/slackapi/node-slack-sdk/releases)
- [Commits](https://github.com/slackapi/node-slack-sdk/compare/@slack/web-api@7.16.0...@slack/web-api@8.0.0)

---
updated-dependencies:
- dependency-name: "@slack/web-api"
  dependency-version: 8.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/slack/web-api-8.0.0 branch from 9d343d6 to 955567c Compare July 27, 2026 02:24
@nearform-lastlight nearform-lastlight Bot added dependency-functional Dependency update has functional impact — needs human review. requires-human Last Light can't proceed automatically; a maintainer must handle it. labels Jul 27, 2026
@nearform-lastlight

Copy link
Copy Markdown
Contributor

This is a major version bump (@slack/web-api 7.x → 8.x) and cannot be auto-merged — it carries breaking changes that need a human review before landing.

Breaking changes in v8.0.0 relevant to this codebase:

  • Error handling redesigned. Error objects are now proper Error subclasses (WebAPIPlatformError, WebAPIRequestError, etc.) instead of plain objects with a .code property. Any catch blocks checking error.code === ErrorCode.* must be migrated to instanceof checks.
  • axios removed; replaced by native Fetch API. All WebClientOptions that relied on axios internals are gone: agent, tls/TLSOptions, requestInterceptor/RequestInterceptor, adapter/AdapterConfig, RequestConfig, and attachOriginalToWebAPIRequestError.
  • Node.js minimum raised from 18 to 20. If any environment runs Node 18, this upgrade will break at startup.
  • WebAPIHTTPError.headers type changed from IncomingHttpHeaders to Record<string, string>.

Recommended actions before merging:

  1. Search the server code for error.code checks against ErrorCode.* and update to instanceof WebAPIPlatformError (or the appropriate subclass).
  2. Check whether WebClient is instantiated with any of the removed options (agent, tls, requestInterceptor, adapter).
  3. Confirm all deployment targets run Node.js ≥ 20.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file dependency-functional Dependency update has functional impact — needs human review. javascript Pull requests that update javascript code requires-human Last Light can't proceed automatically; a maintainer must handle it.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants