Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions .changeset/plenty-times-rhyme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
"@slack/socket-mode": patch
"@slack/cli-hooks": patch
"@slack/cli-test": patch
"@slack/web-api": patch
"@slack/webhook": patch
"@slack/logger": patch
"@slack/oauth": patch
"@slack/types": patch
---

build: add support for node 24
11 changes: 5 additions & 6 deletions .github/workflows/ci-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ jobs:
- "18.x"
- "20.x"
- "22.x"
- "24.x"
runs-on: ${{ matrix.os }}
permissions:
contents: read
Expand Down Expand Up @@ -62,16 +63,14 @@ jobs:
- name: Lint
run: npm run lint
- name: Run tests (Node 18/20)
if: matrix.node-version != '22.x'
shell: bash
if: matrix.node-version != '22.x' && matrix.node-version != '24.x'
# Node 18 lacks --test-reporter; Node 20 has coverage bugs. Use simpler script.
run: npm run test:node18 --workspaces --if-present
- name: Run tests (Node 22)
if: matrix.node-version == '22.x'
shell: bash
- name: Run tests (Node 22+)
if: matrix.node-version == '22.x' || matrix.node-version == '24.x'
run: npm test
- name: Upload code coverage
if: matrix.node-version == '22.x' && matrix.os == 'ubuntu-latest'
if: matrix.node-version == '24.x' && matrix.os == 'ubuntu-latest'
uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5.5.2
with:
fail_ci_if_error: true
Expand Down
4 changes: 2 additions & 2 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ npm run build --workspace=@slack/socket-mode
2. **Request types ARE manually maintained** β€” `packages/web-api/src/types/request/` is hand-written code; edit these responsibly.
3. **Build packages in dependency order** β€” see the dependency graph above.
4. **Use Biome**, not ESLint or Prettier β€” config is in `biome.json` at repo root.
5. **TypeScript 5.9.3**, Node 18+.
5. **TypeScript 5.9.3**, Node 18+ (tested on Node 18, 20, 22, 24).

## Code Conventions

Expand Down Expand Up @@ -282,7 +282,7 @@ Entry point for response type generation. It:
- **Unit tests**: `*.test.{ts,js}` files alongside source (e.g., `src/WebClient.test.ts`)
- **Type tests**: tsd (`*.test-d.ts` files in `packages/web-api/test/types/`)
- **Integration tests**: CommonJS, ESM, and TypeScript compatibility checks
- **CI matrix**: Node 18.x, 20.x, 22.x on Ubuntu + Windows (6 jobs total)
- **CI matrix**: Node 18.x, 20.x, 22.x, 24.x on Ubuntu + Windows (8 jobs total)
- **Coverage output**: `lcov.info` at each package root (not in `coverage/` dir)
- **Test results**: `test-results.xml` at each package root (JUnit format)

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ Refer to [the module document page](https://docs.slack.dev/tools/node-slack-sdk/

## Requirements

This package supports Node v14 and higher. It's highly recommended to use [the latest LTS version of
This package supports Node v18 and higher. It's highly recommended to use [the latest LTS version of
node](https://github.com/nodejs/Release#release-schedule), and the documentation is written using syntax and features
from that version.

Expand Down