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: a4bd4373b2c3b2521ee4c499cb8e90e98f78bfa5
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 Aug 18, 2017

  1. Copy the full SHA
    48817a7 View commit details

Commits on Sep 14, 2017

  1. build: mocha@3.5.3

    dougwilson committed Sep 14, 2017
    Copy the full SHA
    78e5510 View commit details
  2. build: should@13.0.1

    dougwilson committed Sep 14, 2017
    Copy the full SHA
    b208b24 View commit details

Commits on Sep 18, 2017

  1. Copy the full SHA
    de5fb62 View commit details

Commits on Sep 22, 2017

  1. deps: fresh@0.5.2

    dougwilson committed Sep 22, 2017
    Copy the full SHA
    9e067ad View commit details
  2. deps: send@0.15.5

    dougwilson committed Sep 22, 2017
    Copy the full SHA
    9e0fa7f View commit details
  3. deps: serve-static@1.12.5

    dougwilson committed Sep 22, 2017
    Copy the full SHA
    961dbff View commit details
  4. build: should@13.1.0

    dougwilson committed Sep 22, 2017
    Copy the full SHA
    d7da225 View commit details
  5. Copy the full SHA
    19a2eeb View commit details

Commits on Sep 23, 2017

  1. deps: debug@2.6.9

    dougwilson committed Sep 23, 2017
    Copy the full SHA
    9395db4 View commit details
  2. deps: finalhandler@~1.0.6

    dougwilson committed Sep 23, 2017
    Copy the full SHA
    bd1672f View commit details
  3. deps: send@0.15.6

    dougwilson committed Sep 23, 2017
    Copy the full SHA
    7137bf5 View commit details
  4. deps: serve-static@1.12.6

    dougwilson committed Sep 23, 2017
    Copy the full SHA
    40435ec View commit details

Commits on Sep 25, 2017

  1. 4.15.5

    dougwilson committed Sep 25, 2017
    Copy the full SHA
    ea3d605 View commit details

Commits on Sep 26, 2017

  1. build: support Node.js 8.x

    dougwilson committed Sep 26, 2017
    Copy the full SHA
    94fdb67 View commit details
  2. Copy the full SHA
    c3fb7e5 View commit details
  3. Copy the full SHA
    80f1ea9 View commit details
  4. Copy the full SHA
    48940e6 View commit details
  5. deps: setprototypeof@1.1.0

    dougwilson committed Sep 26, 2017
    Copy the full SHA
    550043c View commit details

Commits on Sep 28, 2017

  1. deps: accepts@~1.3.4

    dougwilson committed Sep 28, 2017
    Copy the full SHA
    9a99c15 View commit details
  2. deps: content-type@~1.0.4

    dougwilson committed Sep 28, 2017
    Copy the full SHA
    70589c3 View commit details
  3. deps: etag@~1.8.1

    dougwilson committed Sep 28, 2017
    Copy the full SHA
    e62bb8b View commit details
  4. deps: qs@6.5.1

    dougwilson committed Sep 28, 2017
    Copy the full SHA
    ad7d96d View commit details
  5. deps: parseurl@~1.3.2

    dougwilson committed Sep 28, 2017
    Copy the full SHA
    5cc761c View commit details
  6. deps: utils-merge@1.0.1

    dougwilson committed Sep 28, 2017
    Copy the full SHA
    673d51f View commit details
  7. deps: finalhandler@1.1.0

    dougwilson committed Sep 28, 2017
    Copy the full SHA
    c2f4fb5 View commit details
  8. deps: proxy-addr@~2.0.2

    closes #3432
    dougwilson committed Sep 28, 2017
    Copy the full SHA
    02a9d5f View commit details
  9. perf: re-use options object when generating ETags

    closes #3313
    closes #3314
    lpage authored and dougwilson committed Sep 28, 2017
    Copy the full SHA
    d9d09b8 View commit details
  10. docs: fix typo in jsdoc comment

    closes #3430
    shime authored and dougwilson committed Sep 28, 2017
    Copy the full SHA
    fa272ed View commit details
  11. 10
    Copy the full SHA
    12c3712 View commit details
  12. Copy the full SHA
    2df1ad2 View commit details
  13. deps: vary@~1.1.2

    closes #3434
    chainhelen authored and dougwilson committed Sep 28, 2017
    Copy the full SHA
    44591fe View commit details
  14. Copy the full SHA
    95fb5cc View commit details
  15. Add options to res.download

    closes #3327
    closes #3370
    chillypepper authored and dougwilson committed Sep 28, 2017
    Copy the full SHA
    a24fd0c View commit details
  16. Copy the full SHA
    628438d View commit details
  17. Add "escape json" setting for res.json and res.jsonp

    closes #3268
    closes #3269
    Greg Guthe authored and dougwilson committed Sep 28, 2017
    Copy the full SHA
    7154014 View commit details
  18. Copy the full SHA
    ddeb713 View commit details
  19. deps: send@0.16.0

    closes #3431
    closes #3435
    danez authored and dougwilson committed Sep 28, 2017
    Copy the full SHA
    4196458 View commit details
  20. deps: serve-static@1.13.0

    closes #3197
    dougwilson committed Sep 28, 2017
    Copy the full SHA
    86f5df0 View commit details
  21. Copy the full SHA
    c0136d8 View commit details
  22. Copy the full SHA
    8d4ceb6 View commit details
  23. 4.16.0

    dougwilson committed Sep 28, 2017
    Copy the full SHA
    f974d22 View commit details

Commits on Sep 29, 2017

  1. deps: send@0.16.1

    dougwilson committed Sep 29, 2017
    Copy the full SHA
    6d9b13c View commit details
  2. deps: serve-static@1.13.1

    closes #3436
    dougwilson committed Sep 29, 2017
    Copy the full SHA
    6f823e4 View commit details
  3. 4.16.1

    dougwilson committed Sep 29, 2017
    Copy the full SHA
    e3f7f51 View commit details

Commits on Oct 1, 2017

  1. Copy the full SHA
    de129c2 View commit details

Commits on Oct 5, 2017

  1. Copy the full SHA
    48aba21 View commit details

Commits on Oct 10, 2017

  1. Copy the full SHA
    b7817ab View commit details
  2. Copy the full SHA
    b97faff View commit details
  3. 4.16.2

    dougwilson committed Oct 10, 2017
    Copy the full SHA
    351396f View commit details
Showing with 9,035 additions and 1,264 deletions.
  1. +0 −8 .eslintrc
  2. +8 −0 .eslintrc.yml
  3. +190 −0 .github/workflows/ci.yml
  4. +66 −0 .github/workflows/codeql.yml
  5. +69 −0 .github/workflows/iojs.yml
  6. +6 −16 .gitignore
  7. +1 −0 .npmrc
  8. +0 −33 .travis.yml
  9. +92 −0 Charter.md
  10. +139 −0 Code-Of-Conduct.md
  11. +2 −1 Collaborator-Guide.md
  12. +138 −14 Contributing.md
  13. +372 −14 History.md
  14. +159 −40 Readme.md
  15. +13 −0 Release-Process.md
  16. +15 −2 Security.md
  17. +70 −0 Triager-Guide.md
  18. +96 −9 appveyor.yml
  19. +12 −8 benchmarks/Makefile
  20. +34 −0 benchmarks/README.md
  21. +2 −4 benchmarks/middleware.js
  22. +5 −3 benchmarks/run
  23. +29 −0 examples/README.md
  24. +8 −6 examples/auth/index.js
  25. +2 −0 examples/auth/views/head.ejs
  26. +6 −7 examples/auth/views/login.ejs
  27. +2 −0 examples/content-negotiation/db.js
  28. +2 −0 examples/content-negotiation/index.js
  29. +1 −0 examples/content-negotiation/users.js
  30. +4 −5 examples/cookie-sessions/index.js
  31. +4 −3 examples/cookies/index.js
  32. +3 −0 examples/downloads/files/notes/groceries.txt
  33. +14 −9 examples/downloads/index.js
  34. +2 −0 examples/ejs/index.js
  35. +1 −1 examples/ejs/public/stylesheets/style.css
  36. +1 −0 examples/ejs/views/header.html
  37. +2 −2 examples/ejs/views/users.html
  38. +4 −2 examples/error-pages/index.js
  39. +2 −2 examples/error-pages/views/404.ejs
  40. +2 −2 examples/error-pages/views/500.ejs
  41. +2 −0 examples/error-pages/views/error_header.ejs
  42. +2 −0 examples/error-pages/views/index.ejs
  43. +4 −2 examples/error/index.js
  44. +3 −1 examples/hello-world/index.js
  45. +3 −1 examples/markdown/index.js
  46. +2 −0 examples/multi-router/controllers/api_v1.js
  47. +2 −0 examples/multi-router/controllers/api_v2.js
  48. +3 −1 examples/multi-router/index.js
  49. +0 −60 examples/multipart/index.js
  50. +2 −0 examples/mvc/controllers/main/index.js
  51. +2 −0 examples/mvc/controllers/pet/index.js
  52. +2 −0 examples/mvc/controllers/pet/views/edit.ejs
  53. +2 −0 examples/mvc/controllers/pet/views/show.ejs
  54. +2 −0 examples/mvc/controllers/user-pet/index.js
  55. +2 −0 examples/mvc/controllers/user/index.js
  56. +2 −0 examples/mvc/controllers/user/views/edit.hbs
  57. +2 −0 examples/mvc/controllers/user/views/list.hbs
  58. +2 −0 examples/mvc/controllers/user/views/show.hbs
  59. +2 −0 examples/mvc/db.js
  60. +3 −2 examples/mvc/index.js
  61. +2 −0 examples/mvc/lib/boot.js
  62. +1 −1 examples/mvc/public/style.css
  63. +1 −0 examples/mvc/views/404.ejs
  64. +1 −0 examples/mvc/views/5xx.ejs
  65. +1 −0 examples/online/index.js
  66. +6 −11 examples/params/index.js
  67. +3 −1 examples/resource/index.js
  68. +7 −4 examples/route-map/index.js
  69. +5 −3 examples/route-middleware/index.js
  70. +3 −2 examples/route-separation/index.js
  71. +2 −0 examples/route-separation/post.js
  72. +2 −0 examples/route-separation/site.js
  73. +2 −0 examples/route-separation/user.js
  74. +1 −0 examples/route-separation/views/header.ejs
  75. +2 −2 examples/route-separation/views/index.ejs
  76. +2 −2 examples/route-separation/views/posts/index.ejs
  77. +3 −3 examples/route-separation/views/users/edit.ejs
  78. +2 −2 examples/route-separation/views/users/index.ejs
  79. +2 −2 examples/route-separation/views/users/view.ejs
  80. +1 −0 examples/search/index.js
  81. +3 −1 examples/search/public/client.js
  82. +3 −2 examples/search/public/index.html
  83. +1 −0 examples/session/index.js
  84. +2 −0 examples/session/redis.js
  85. +2 −0 examples/static-files/index.js
  86. +1 −1 examples/static-files/public/js/app.js
  87. +2 −0 examples/vhost/index.js
  88. +2 −0 examples/view-constructor/github-view.js
  89. +2 −0 examples/view-constructor/index.js
  90. +5 −3 examples/view-locals/index.js
  91. +2 −0 examples/view-locals/user.js
  92. +1 −0 examples/view-locals/views/index.ejs
  93. +14 −9 examples/web-service/index.js
  94. +21 −4 lib/application.js
  95. +10 −5 lib/express.js
  96. +11 −3 lib/request.js
  97. +154 −51 lib/response.js
  98. +29 −18 lib/router/index.js
  99. +24 −10 lib/router/route.js
  100. +29 −24 lib/utils.js
  101. +10 −2 lib/view.js
  102. +44 −43 package.json
  103. +52 −20 test/Route.js
  104. +112 −23 test/Router.js
  105. +16 −1 test/acceptance/auth.js
  106. +1 −1 test/acceptance/cookie-sessions.js
  107. +17 −0 test/acceptance/downloads.js
  108. +1 −4 test/acceptance/error-pages.js
  109. +21 −0 test/acceptance/hello-world.js
  110. +1 −1 test/acceptance/multi-router.js
  111. +5 −5 test/acceptance/web-service.js
  112. +8 −5 test/app.all.js
  113. +1 −0 test/app.del.js
  114. +8 −6 test/app.engine.js
  115. +8 −10 test/app.head.js
  116. +40 −18 test/app.js
  117. +3 −7 test/app.listen.js
  118. +16 −17 test/app.locals.js
  119. +1 −0 test/app.options.js
  120. +20 −21 test/app.param.js
  121. +32 −33 test/app.render.js
  122. +120 −0 test/app.request.js
  123. +114 −15 test/app.response.js
  124. +2 −0 test/app.route.js
  125. +104 −50 test/app.router.js
  126. +9 −6 test/app.routes.error.js
  127. +33 −18 test/app.use.js
  128. +45 −0 test/config.js
  129. +37 −11 test/exports.js
  130. +790 −0 test/express.json.js
  131. +555 −0 test/express.raw.js
  132. +814 −0 test/express.static.js
  133. +605 −0 test/express.text.js
  134. +866 −0 test/express.urlencoded.js
  135. 0 test/fixtures/broken.send
  136. 0 test/fixtures/empty.txt
  137. +1 −0 test/fixtures/nums.txt
  138. +1 −0 test/fixtures/pets/names.txt
  139. 0 test/fixtures/snow ☃/.gitkeep
  140. +1 −0 test/fixtures/todo.html
  141. +1 −0 test/fixtures/todo.txt
  142. +1 −0 test/fixtures/users/index.html
  143. +1 −0 test/fixtures/users/tobi.txt
  144. +4 −1 test/middleware.basic.js
  145. +0 −3 test/mocha.opts
  146. +1 −0 test/regression.js
  147. +1 −0 test/req.accepts.js
  148. +3 −2 test/req.acceptsCharset.js
  149. +3 −2 test/req.acceptsCharsets.js
  150. +19 −16 test/req.acceptsEncoding.js
  151. +20 −17 test/req.acceptsEncodings.js
  152. +29 −25 test/req.acceptsLanguage.js
  153. +29 −25 test/req.acceptsLanguages.js
  154. +1 −0 test/req.baseUrl.js
  155. +1 −0 test/req.fresh.js
  156. +1 −0 test/req.get.js
  157. +1 −0 test/req.host.js
  158. +51 −0 test/req.hostname.js
  159. +17 −1 test/req.ip.js
  160. +1 −0 test/req.ips.js
  161. +1 −0 test/req.is.js
  162. +2 −2 test/req.param.js
  163. +1 −0 test/req.path.js
  164. +1 −0 test/req.protocol.js
  165. +7 −4 test/req.query.js
  166. +1 −0 test/req.range.js
  167. +7 −4 test/req.route.js
  168. +1 −0 test/req.secure.js
  169. +2 −1 test/req.signedCookies.js
  170. +1 −0 test/req.stale.js
  171. +1 −0 test/req.subdomains.js
  172. +23 −55 test/req.xhr.js
  173. +42 −30 test/res.append.js
  174. +3 −1 test/res.attachment.js
  175. +33 −0 test/res.clearCookie.js
  176. +142 −23 test/res.cookie.js
  177. +395 −9 test/res.download.js
  178. +41 −10 test/res.format.js
  179. +1 −0 test/res.get.js
  180. +39 −1 test/res.json.js
  181. +95 −53 test/res.jsonp.js
  182. +1 −0 test/res.links.js
  183. +5 −6 test/res.locals.js
  184. +270 −12 test/res.location.js
  185. +35 −12 test/res.redirect.js
  186. +21 −4 test/res.render.js
  187. +65 −13 test/res.send.js
  188. +820 −159 test/res.sendFile.js
  189. +1 −0 test/res.sendStatus.js
  190. +1 −0 test/res.set.js
  191. +194 −12 test/res.status.js
  192. +3 −1 test/res.type.js
  193. +1 −0 test/res.vary.js
  194. +1 −1 test/support/env.js
  195. +1 −0 test/support/tmpl.js
  196. +62 −0 test/support/utils.js
  197. +27 −20 test/utils.js
8 changes: 0 additions & 8 deletions .eslintrc

This file was deleted.

8 changes: 8 additions & 0 deletions .eslintrc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
root: true

rules:
eol-last: error
eqeqeq: [error, allow-null]
indent: [error, 2, { MemberExpression: "off", SwitchCase: 1 }]
no-trailing-spaces: error
no-unused-vars: [error, { vars: all, args: none, ignoreRestSiblings: true }]
190 changes: 190 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,190 @@
name: ci

on:
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:
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:
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:
- 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"

- node-version: "0.12"
npm-i: "mocha@3.5.3 nyc@10.3.2 supertest@2.0.0"
npm-version: "npm@2.15.11"

- node-version: "4"
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"

- node-version: "6"
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"

- node-version: "8"
npm-i: "mocha@7.2.0 nyc@14.1.1"

- node-version: "9"
npm-i: "mocha@7.2.0 nyc@14.1.1"

- node-version: "10"
npm-i: "mocha@8.4.0"

- node-version: "11"
npm-i: "mocha@8.4.0"

- node-version: "12"
npm-i: "mocha@9.2.2"

- node-version: "13"
npm-i: "mocha@9.2.2"

runs-on: ${{ matrix.os }}
steps:
- 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

coverage:
needs: test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Install lcov
shell: bash
run: sudo apt-get -y install lcov

- name: Collect coverage reports
uses: actions/download-artifact@v3
with:
name: coverage
path: ./coverage

- name: Merge coverage reports
shell: bash
run: find ./coverage -name lcov.info -exec printf '-a %q\n' {} \; | xargs lcov -o ./coverage/lcov.info

- name: Upload coverage report
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
66 changes: 66 additions & 0 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"

on:
push:
branches: ["master"]
pull_request:
# The branches below must be a subset of the branches above
branches: ["master"]
schedule:
- cron: "0 0 * * 1"

permissions:
contents: read

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write

steps:
- name: Checkout repository
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@3ab4101902695724f9365a384f86c1074d94e18c # v3.24.7
with:
languages: javascript
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.

# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
# - name: Autobuild
# uses: github/codeql-action/autobuild@3ab4101902695724f9365a384f86c1074d94e18c # v3.24.7

# ℹ️ Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun

# If the Autobuild fails above, remove it and uncomment the following three lines.
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.

# - run: |
# echo "Run, Build Application using script"
# ./location_of_script_within_repo/buildscript.sh

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@3ab4101902695724f9365a384f86c1074d94e18c # v3.24.7
with:
category: "/language:javascript"
69 changes: 69 additions & 0 deletions .github/workflows/iojs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
name: iojs-ci

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

concurrency:
group: "${{ github.workflow }} ✨ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}"
cancel-in-progress: true

jobs:
test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node-version: ["1.8", "2.5", "3.3"]
include:
- node-version: "1.8"
npm-i: "mocha@3.5.3 nyc@10.3.2 supertest@2.0.0"
- node-version: "2.5"
npm-i: "mocha@3.5.3 nyc@10.3.2 supertest@2.0.0"
- node-version: "3.3"
npm-i: "mocha@3.5.3 nyc@10.3.2 supertest@2.0.0"

steps:
- uses: actions/checkout@v4

- name: Install iojs ${{ 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
- 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

- name: Install Node.js dependencies
run: npm install

- name: List environment
id: list_env
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 $2 "=" $3 }' >> "$GITHUB_OUTPUT"
- name: Run tests
shell: bash
run: npm run test

22 changes: 6 additions & 16 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,26 +1,16 @@
# OS X
.DS_Store*
Icon?
._*

# Windows
Thumbs.db
ehthumbs.db
Desktop.ini

# Linux
.directory
*~


# npm
node_modules
package-lock.json
npm-shrinkwrap.json
*.log
*.gz


# Coveralls
.nyc_output
coverage

# Benchmarking
benchmarks/graphs

# ignore additional files using core.excludesFile
# https://git-scm.com/docs/gitignore
1 change: 1 addition & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
package-lock=false
Loading