Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: expressjs/express
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: d854c43ea177d1faeea56189249fff8c24a764bd
Choose a base ref
...
head repository: expressjs/express
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 8e229f92752ad51462c868b99f6e6c2e559801b0
Choose a head ref

Commits on May 20, 2022

  1. build: mocha@10.0.0

    dougwilson committed May 20, 2022
    Copy the full SHA
    a2dfc56 View commit details
  2. build: ejs@3.1.8

    dougwilson committed May 20, 2022
    Copy the full SHA
    745a63f View commit details
  3. build: Node.js@18.1

    dougwilson committed May 20, 2022
    Copy the full SHA
    ab2c70b View commit details
  4. Copy the full SHA
    7ec5dd2 View commit details
  5. Copy the full SHA
    97f0a51 View commit details
  6. examples: remove unused function arguments in params

    closes #4914
    alxdrg authored and dougwilson committed May 20, 2022
    Copy the full SHA
    2c47827 View commit details

Commits on Aug 19, 2022

  1. build: Node.js@16.17

    dougwilson committed Aug 19, 2022
    Copy the full SHA
    8d98e86 View commit details
  2. build: Node.js@18.7

    dougwilson committed Aug 19, 2022
    Copy the full SHA
    97131bc View commit details
  3. build: Node.js@14.20

    dougwilson committed Aug 19, 2022
    Copy the full SHA
    ecd7572 View commit details
  4. build: supertest@6.2.4

    dougwilson committed Aug 19, 2022
    Copy the full SHA
    644f646 View commit details

Commits on Aug 20, 2022

  1. docs: use Node.js name style

    closes #4926
    REALSTEVEIG authored and dougwilson committed Aug 20, 2022
    Copy the full SHA
    33e8dc3 View commit details

Commits on Oct 6, 2022

  1. build: eslint@8.24.0

    dougwilson committed Oct 6, 2022
    Copy the full SHA
    340be0f View commit details
  2. deps: body-parser@1.20.1

    dougwilson committed Oct 6, 2022
    Copy the full SHA
    689d175 View commit details
  3. deps: qs@6.11.0

    dougwilson committed Oct 6, 2022
    Copy the full SHA
    24b3dc5 View commit details
  4. build: supertest@6.3.0

    dougwilson committed Oct 6, 2022
    Copy the full SHA
    f56ce73 View commit details

Commits on Oct 7, 2022

  1. build: Node.js@18.10

    closes #5014
    dougwilson committed Oct 7, 2022
    Copy the full SHA
    bb7907b View commit details

Commits on Oct 8, 2022

  1. docs: replace Freenode with Libera Chat

    closes #5013
    theabhinavdas authored and dougwilson committed Oct 8, 2022
    Copy the full SHA
    61f4049 View commit details
  2. 4.18.2

    dougwilson committed Oct 8, 2022
    Copy the full SHA
    8368dc1 View commit details

Commits on Nov 2, 2022

  1. docs: update git clone to https protocol

    closes #5032
    vcsjones authored and dougwilson committed Nov 2, 2022
    1
    Copy the full SHA
    06b2b14 View commit details
  2. build: Node.js@16.18

    abenhamdine authored and dougwilson committed Nov 2, 2022
    Copy the full SHA
    29e117e View commit details
  3. build: Node.js@18.12

    abenhamdine authored and dougwilson committed Nov 2, 2022
    Copy the full SHA
    723b677 View commit details
  4. build: actions/checkout@v3

    closes #5027
    armujahid authored and dougwilson committed Nov 2, 2022
    Copy the full SHA
    442fd46 View commit details

Commits on Feb 21, 2023

  1. lint: remove unused function arguments in tests

    closes #5124
    raksbisht authored and dougwilson committed Feb 21, 2023
    Copy the full SHA
    c6ee8d6 View commit details

Commits on Feb 22, 2023

  1. Copy the full SHA
    a1efd9d View commit details
  2. docs: fix typos in JSDoc comments

    closes #5117
    raksbisht authored and dougwilson committed Feb 22, 2023
    Copy the full SHA
    6b4c4f5 View commit details
  3. lint: remove unused parameters in examples

    closes #5113
    raksbisht authored and dougwilson committed Feb 22, 2023
    Copy the full SHA
    3c1d605 View commit details
  4. build: Node.js@16.19

    dougwilson committed Feb 22, 2023
    Copy the full SHA
    f05b5d0 View commit details
  5. build: Node.js@18.14

    dougwilson committed Feb 22, 2023
    Copy the full SHA
    546969d View commit details
  6. Copy the full SHA
    b9f7a97 View commit details

Commits on Feb 23, 2023

  1. Copy the full SHA
    506fbd6 View commit details
  2. deps: body-parser@1.20.2

    dougwilson committed Feb 23, 2023
    Copy the full SHA
    1e42a98 View commit details
  3. build: mocha@10.2.0

    dougwilson committed Feb 23, 2023
    Copy the full SHA
    60b7c67 View commit details
  4. build: eslint@8.34.0

    dougwilson committed Feb 23, 2023
    Copy the full SHA
    8a76f39 View commit details
  5. docs: fix typos in history

    closes #5131
    raksbisht authored and dougwilson committed Feb 23, 2023
    Copy the full SHA
    5ad9541 View commit details
  6. build: support Node.js 19.x

    abenhamdine authored and dougwilson committed Feb 23, 2023
    Copy the full SHA
    9bc1742 View commit details
  7. Copy the full SHA
    74beeac View commit details

Commits on Feb 26, 2023

  1. Copy the full SHA
    0debedf View commit details

Commits on Mar 14, 2023

  1. Copy the full SHA
    8c24fa8 View commit details
  2. build: ejs@3.1.9

    dougwilson committed Mar 14, 2023
    Copy the full SHA
    f4e48bc View commit details
  3. build: eslint@8.36.0

    dougwilson committed Mar 14, 2023
    Copy the full SHA
    b8b2eff View commit details
  4. build: Node.js@18.15

    dougwilson committed Mar 14, 2023
    Copy the full SHA
    f540c3b View commit details

Commits on Apr 7, 2023

  1. Copy the full SHA
    91b6fb8 View commit details
  2. build: Node.js@16.20

    dougwilson committed Apr 7, 2023
    1
    Copy the full SHA
    24e4a25 View commit details

Commits on May 16, 2023

  1. Copy the full SHA
    3531987 View commit details

Commits on Jun 4, 2023

  1. tests: use random port in listen test

    closes #5162
    rluvaton authored and dougwilson committed Jun 4, 2023
    1
    Copy the full SHA
    2a00da2 View commit details

Commits on Aug 23, 2023

  1. build: eslint@8.47.0

    dougwilson committed Aug 23, 2023
    Copy the full SHA
    13df1de View commit details
  2. build: Node.js@18.17

    dougwilson committed Aug 23, 2023
    Copy the full SHA
    8d8bfaa View commit details

Commits on Aug 24, 2023

  1. build: Node.js@19.9

    dougwilson committed Aug 24, 2023
    Copy the full SHA
    02d1c39 View commit details

Commits on Nov 2, 2023

  1. Copy the full SHA
    a229207 View commit details

Commits on Feb 19, 2024

  1. docs: update TC governance rules

    closes #5483
    wesleytodd authored and dougwilson committed Feb 19, 2024
    Copy the full SHA
    c4fe7de View commit details
303 changes: 158 additions & 145 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,177 +1,190 @@
name: ci

on:
- pull_request
- push
push:
branches:
- master
- develop
- '4.x'
- '5.x'
paths-ignore:
- '*.md'
pull_request:
paths-ignore:
- '*.md'

# Cancel in progress workflows
# in the scenario where we already had a run going for that PR/branch/tag but then triggered a new run
concurrency:
group: "${{ github.workflow }} ✨ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}"
cancel-in-progress: true

jobs:
test:
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js {{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: 'lts/*'
persist-credentials: false

- name: Install dependencies
run: npm install --ignore-scripts --only=dev

- name: Run lint
run: npm run lint

test:
name: Run tests
strategy:
fail-fast: false
matrix:
name:
- Node.js 0.10
- Node.js 0.12
- io.js 1.x
- io.js 2.x
- io.js 3.x
- Node.js 4.x
- Node.js 5.x
- Node.js 6.x
- Node.js 7.x
- Node.js 8.x
- Node.js 9.x
- Node.js 10.x
- Node.js 11.x
- Node.js 12.x
- Node.js 13.x
- Node.js 14.x
- Node.js 15.x
- Node.js 16.x
- Node.js 17.x
- Node.js 18.x

os: [ubuntu-latest, windows-latest]
node-version:
- "0.10"
- "0.12"
- "4"
- "5"
- "6"
- "7"
- "8"
- "9"
- "10"
- "11"
- "12"
- "13"
- "14"
- "15"
- "16"
- "17"
- "18"
- "19"
- "20"
- "21"
- "22"
# Use supported versions of our testing tools under older versions of Node
# Install npm in some specific cases where we need to
include:
- name: Node.js 0.10
node-version: "0.10"
npm-i: mocha@3.5.3 nyc@10.3.2 supertest@2.0.0

- name: Node.js 0.12
node-version: "0.12"
npm-i: mocha@3.5.3 nyc@10.3.2 supertest@2.0.0

- name: io.js 1.x
node-version: "1.8"
npm-i: mocha@3.5.3 nyc@10.3.2 supertest@2.0.0
- node-version: "0.10"
npm-i: "mocha@3.5.3 nyc@10.3.2 supertest@2.0.0"
# Npm isn't being installed on windows w/ setup-node for
# 0.10 and 0.12, which will end up choking when npm uses es6
npm-version: "npm@2.15.1"

- name: io.js 2.x
node-version: "2.5"
npm-i: mocha@3.5.3 nyc@10.3.2 supertest@2.0.0
- node-version: "0.12"
npm-i: "mocha@3.5.3 nyc@10.3.2 supertest@2.0.0"
npm-version: "npm@2.15.11"

- name: io.js 3.x
node-version: "3.3"
npm-i: mocha@3.5.3 nyc@10.3.2 supertest@2.0.0
- node-version: "4"
npm-i: "mocha@5.2.0 nyc@11.9.0 supertest@3.4.2"

- name: Node.js 4.x
node-version: "4.9"
npm-i: mocha@5.2.0 nyc@11.9.0 supertest@3.4.2
- node-version: "5"
npm-i: "mocha@5.2.0 nyc@11.9.0 supertest@3.4.2"
# fixes https://github.com/npm/cli/issues/681
npm-version: "npm@3.10.10"

- name: Node.js 5.x
node-version: "5.12"
npm-i: mocha@5.2.0 nyc@11.9.0 supertest@3.4.2
- node-version: "6"
npm-i: "mocha@6.2.2 nyc@14.1.1 supertest@3.4.2"

- name: Node.js 6.x
node-version: "6.17"
npm-i: mocha@6.2.2 nyc@14.1.1 supertest@3.4.2
- node-version: "7"
npm-i: "mocha@6.2.2 nyc@14.1.1 supertest@6.1.6"

- name: Node.js 7.x
node-version: "7.10"
npm-i: mocha@6.2.2 nyc@14.1.1 supertest@6.1.6
- node-version: "8"
npm-i: "mocha@7.2.0 nyc@14.1.1"

- name: Node.js 8.x
node-version: "8.17"
npm-i: mocha@7.2.0
- node-version: "9"
npm-i: "mocha@7.2.0 nyc@14.1.1"

- name: Node.js 9.x
node-version: "9.11"
npm-i: mocha@7.2.0
- node-version: "10"
npm-i: "mocha@8.4.0"

- name: Node.js 10.x
node-version: "10.24"
npm-i: mocha@8.4.0
- node-version: "11"
npm-i: "mocha@8.4.0"

- name: Node.js 11.x
node-version: "11.15"
npm-i: mocha@8.4.0
- node-version: "12"
npm-i: "mocha@9.2.2"

- name: Node.js 12.x
node-version: "12.22"

- name: Node.js 13.x
node-version: "13.14"

- name: Node.js 14.x
node-version: "14.19"

- name: Node.js 15.x
node-version: "15.14"

- name: Node.js 16.x
node-version: "16.15"

- name: Node.js 17.x
node-version: "17.9"

- name: Node.js 18.x
node-version: "18.0"
- node-version: "13"
npm-i: "mocha@9.2.2"

runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2

- name: Install Node.js ${{ matrix.node-version }}
shell: bash -eo pipefail -l {0}
run: |
nvm install --default ${{ matrix.node-version }}
dirname "$(nvm which ${{ matrix.node-version }})" >> "$GITHUB_PATH"
- name: Configure npm
run: |
npm config set loglevel error
npm config set shrinkwrap false
- uses: actions/checkout@v4
with:
persist-credentials: false

- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}

- name: Npm version fixes
if: ${{matrix.npm-version != ''}}
run: npm install -g ${{ matrix.npm-version }}

- name: Configure npm loglevel
run: |
npm config set loglevel error
shell: bash

- name: Install dependencies
run: npm install

- name: Install Node version specific dev deps
if: ${{ matrix.npm-i != '' }}
run: npm install --save-dev ${{ matrix.npm-i }}

- name: Remove non-test dependencies
run: npm rm --silent --save-dev connect-redis

- name: Output Node and NPM versions
run: |
echo "Node.js version: $(node -v)"
echo "NPM version: $(npm -v)"
- name: Run tests
shell: bash
run: |
npm run test-ci
cp coverage/lcov.info "coverage/${{ matrix.node-version }}.lcov"
- name: Collect code coverage
run: |
mv ./coverage "./${{ matrix.node-version }}"
mkdir ./coverage
mv "./${{ matrix.node-version }}" "./coverage/${{ matrix.node-version }}"
- name: Upload code coverage
uses: actions/upload-artifact@v3
with:
name: coverage
path: ./coverage
retention-days: 1

- name: Install npm module(s) ${{ matrix.npm-i }}
run: npm install --save-dev ${{ matrix.npm-i }}
if: matrix.npm-i != ''

- name: Remove non-test dependencies
run: npm rm --silent --save-dev connect-redis
coverage:
needs: test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Setup Node.js version-specific dependencies
shell: bash
run: |
# eslint for linting
# - remove on Node.js < 10
if [[ "$(cut -d. -f1 <<< "${{ matrix.node-version }}")" -lt 10 ]]; then
node -pe 'Object.keys(require("./package").devDependencies).join("\n")' | \
grep -E '^eslint(-|$)' | \
sort -r | \
xargs -n1 npm rm --silent --save-dev
fi
- name: Install Node.js dependencies
run: npm install

- name: List environment
id: list_env
- name: Install lcov
shell: bash
run: |
echo "node@$(node -v)"
echo "npm@$(npm -v)"
npm -s ls ||:
(npm -s ls --depth=0 ||:) | awk -F'[ @]' 'NR>1 && $2 { print "::set-output name=" $2 "::" $3 }'
run: sudo apt-get -y install lcov

- name: Run tests
shell: bash
run: npm run test-ci
- name: Collect coverage reports
uses: actions/download-artifact@v3
with:
name: coverage
path: ./coverage

- name: Lint code
if: steps.list_env.outputs.eslint != ''
run: npm run lint
- name: Merge coverage reports
shell: bash
run: find ./coverage -name lcov.info -exec printf '-a %q\n' {} \; | xargs lcov -o ./coverage/lcov.info

- name: Collect code coverage
- name: Upload coverage report
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
flag-name: run-${{ matrix.test_number }}
parallel: true

coverage:
needs: test
runs-on: ubuntu-latest
steps:
- name: Upload code coverage
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.github_token }}
parallel-finished: true
Loading