Skip to content

chore: bump socks-proxy-agent from 8.0.5 to 10.1.0 #350

chore: bump socks-proxy-agent from 8.0.5 to 10.1.0

chore: bump socks-proxy-agent from 8.0.5 to 10.1.0 #350

Workflow file for this run

# This workflow runs for every pull request to lint and test the proposed changes.
name: Check
on:
pull_request:
workflow_call:
inputs:
bun_e2e_mode:
description: 'Bun e2e suite scope: `compatible` (curated subset known to pass) or `full` (entire suite).'
type: string
default: compatible
required: false
workflow_dispatch:
inputs:
bun_e2e_mode:
description: 'Bun e2e suite scope'
type: choice
options:
- compatible
- full
default: compatible
required: true
jobs:
lint:
name: Lint
if: ${{ !contains(github.event.head_commit.message, '[skip ci]') }}
runs-on: ubuntu-24.04
steps:
- name: Checkout repository
uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0
- name: Use Node.js 24
uses: actions/setup-node@249970729cb0ef3589644e2896645e5dc5ba9c38 # v6.5.0
with:
node-version: 24
- name: Install pnpm and dependencies
uses: apify/actions/pnpm-install@v1.1.2
- name: Lint code
run: pnpm run lint
- name: Typecheck
run: pnpm run type-check
unit:
name: Unit tests (Node.js ${{ matrix.node-version }})
if: ${{ !contains(github.event.head_commit.message, '[skip ci]') }}
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
# pnpm 10 supports Node >=18, so Node 20 stays in the matrix.
node-version: [20, 22, 24, 26]
steps:
- name: Checkout repository
uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@249970729cb0ef3589644e2896645e5dc5ba9c38 # v6.5.0
with:
node-version: ${{ matrix.node-version }}
- name: Install pnpm and dependencies
uses: apify/actions/pnpm-install@v1.1.2
- name: Run unit tests
run: pnpm run test:unit
e2e:
name: E2E tests (Node.js 24)
if: ${{ !contains(github.event.head_commit.message, '[skip ci]') }}
runs-on: ubuntu-24.04
steps:
- name: Checkout repository
uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0
- name: Use Node.js 24
uses: actions/setup-node@249970729cb0ef3589644e2896645e5dc5ba9c38 # v6.5.0
with:
node-version: 24
- name: Install pnpm and dependencies
uses: apify/actions/pnpm-install@v1.1.2
# pnpm caches the package store but not puppeteer's browser cache
# (`~/.cache/puppeteer/`). On warm-cache CI runs, pnpm just symlinks
# from the store and skips re-running `postinstall`, so the Chromium
# download never happens. `pnpm rebuild` forces the script to run.
- name: Ensure puppeteer Chromium is downloaded
run: pnpm rebuild puppeteer
- name: Add localhost-test to Linux hosts file
run: sudo echo "127.0.0.1 localhost-test" | sudo tee -a /etc/hosts
- name: Run E2E tests
run: pnpm run test:e2e
bun_unit:
name: Unit tests (Bun)
if: ${{ !contains(github.event.head_commit.message, '[skip ci]') }}
runs-on: ubuntu-24.04
timeout-minutes: 15
steps:
- name: Checkout repository
uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0
- name: Use Node.js 24
uses: actions/setup-node@249970729cb0ef3589644e2896645e5dc5ba9c38 # v6.5.0
with:
node-version: 24
- name: Install Bun
uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2.2.0
with:
bun-version: latest
- name: Install pnpm and dependencies
uses: apify/actions/pnpm-install@v1.1.2
- name: Run unit tests with Bun
run: pnpm run test:bun
bun_e2e:
name: E2E tests (Bun, ${{ inputs.bun_e2e_mode || 'compatible' }})
if: ${{ !contains(github.event.head_commit.message, '[skip ci]') }}
runs-on: ubuntu-24.04
timeout-minutes: 30
steps:
- name: Checkout repository
uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0
- name: Use Node.js 24
uses: actions/setup-node@249970729cb0ef3589644e2896645e5dc5ba9c38 # v6.5.0
with:
node-version: 24
- name: Install Bun
uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2.2.0
with:
bun-version: latest
- name: Install pnpm and dependencies
uses: apify/actions/pnpm-install@v1.1.2
# See note on the Node E2E job — same fix needed here.
- name: Ensure puppeteer Chromium is downloaded
run: pnpm rebuild puppeteer
- name: Add localhost-test to Linux hosts file
run: sudo echo "127.0.0.1 localhost-test" | sudo tee -a /etc/hosts
- name: Run E2E tests (Bun, ${{ inputs.bun_e2e_mode || 'compatible' }})
run: pnpm run test:bun:e2e:${{ inputs.bun_e2e_mode || 'compatible' }}