diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..3975315 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,40 @@ +name: Node.js CI + +on: + [pull_request] + +jobs: + build: + + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macOS-latest] + node: [14.x, 12.x, 10.x] + exclude: + # On Windows, run tests with only the LTS environments. + - os: windows-latest + node: 10.x + - os: windows-latest + node: 14.x + # On macOS, run tests with only the LTS environments. + - os: macOS-latest + node: 10.x + - os: macOS-latest + node: 14.x + + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - run: npm test + if: matrix.node-version != '10.x' + - run: npm run coverage + if: matrix.node-version == '14.x' && matrix.os == 'ubuntu-latest' + + - name: Test without coverage + if: matrix.node-version == '10.x' + run: | + npm install -D esm + npx mocha -r esm diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml new file mode 100644 index 0000000..61b5002 --- /dev/null +++ b/.github/workflows/lint.yml @@ -0,0 +1,25 @@ +name: Lint + +on: + pull_request: + paths: + - '*.js' + - '**eslint**' + - 'package.json' + - '.github/workflows/lint.yml' +jobs: + xo: + + runs-on: [ubuntu-latest] + + strategy: + matrix: + node-version: [12.x] + + steps: + - uses: actions/checkout@v2 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - run: npm run lint diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index f1fc005..0000000 --- a/.travis.yml +++ /dev/null @@ -1,15 +0,0 @@ -language: node_js - -node_js: - - "lts/*" # Latest LTS - - "node" # Latest Stable - -matrix: - include: - - # Linting stage - node_js: "lts/*" # Latest LTS - script: npm run lint - -cache: npm - -after_success: npm run coverage diff --git a/README.md b/README.md index 13c97cb..b00e31c 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ Node Fetch

A light-weight module that brings window.fetch to Node.js.

- Build status + Build status Coverage status Current version Install size