diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 95a6301..d6dce81 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -5,64 +5,79 @@ on: pull_request: branches: [master] schedule: - - cron: 0 0 * * 0 + - cron: 0 0 * * 0 jobs: lint: name: Lint runs-on: ubuntu-latest steps: - - name: Checkout - uses: actions/checkout@v1 - with: - fetch-depth: 1 - - name: Install Node.js - uses: actions/setup-node@v1 - with: - node-version: 12 - - name: Install Packages - run: npm install - - name: Lint - run: npm run -s lint + - name: Checkout + uses: actions/checkout@v2 + - name: Install Node.js + uses: actions/setup-node@v1 + with: + node-version: 14 + - name: Install Packages + run: npm install + - name: Lint + run: npm run -s lint test: name: Test strategy: matrix: - node: [12, 10, 8, 6] - eslint: [6, 5] - exclude: - # ESLint 6 doesn't support Node 6. - - node: 6 - eslint: 6 - # Run ESLint 5 on only the newest and oldest Node. - - node: 10 - eslint: 5 - - node: 8 - eslint: 5 - runs-on: ubuntu-latest + os: [ubuntu-latest] + eslint: [7] + node: [14] + include: + # On other platforms + - eslint: 7 + node: 14 + os: windows-latest + - eslint: 7 + node: 14 + os: macos-latest + # On old Node.js versions + - eslint: 7 + node: 12 + os: ubuntu-latest + - eslint: 7 + node: 10 + os: ubuntu-latest + # On old ESLint versions + - eslint: 6 + node: 14 + os: ubuntu-latest + - eslint: 5 + node: 14 + os: ubuntu-latest + # On the minimum supported ESLint/Node.js version + - eslint: 5 + node: 6.14 + os: ubuntu-latest + runs-on: ${{ matrix.os }} steps: - - name: Checkout - uses: actions/checkout@v1 - with: - fetch-depth: 1 - - name: Install Node.js v${{ matrix.node }} - uses: actions/setup-node@v1 - with: - node-version: ${{ matrix.node }} - - name: Install Packages - run: | - if [ ${{ matrix.node }} -eq 6 ]; then + - name: Checkout + uses: actions/checkout@v2 + - name: Install Node.js v${{ matrix.node }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node }} + - name: Install NPM v6 + if: ${{ matrix.node >= 6 && matrix.node < 7 }} + run: | npm install --global npm@^6.0.0 - fi - npm install - - name: Install ESLint v${{ matrix.eslint }} - run: npm install --no-save eslint@^${{ matrix.eslint }}.0.0 - - name: Build - run: npm run -s build - - name: Test - run: npm run -s test:mocha - - name: Send Coverage - run: npm run -s codecov - env: - CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} + - name: Install Packages + run: | + npm install + - name: Install ESLint ${{ matrix.eslint }} + run: npm install --no-save eslint@${{ matrix.eslint }} + - name: Build + run: npm run -s build + - name: Test + run: npm run -s test:mocha + - name: Send Coverage + run: npm run -s codecov + env: + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} diff --git a/package.json b/package.json index 661a97f..ed794fc 100644 --- a/package.json +++ b/package.json @@ -1,9 +1,9 @@ { "name": "eslint-utils", - "version": "2.1.0", + "version": "2.0.0", "description": "Utilities for ESLint plugins.", "engines": { - "node": ">=6" + "node": ">=6.14" }, "sideEffects": false, "main": "index", @@ -12,15 +12,15 @@ "index.*" ], "dependencies": { - "eslint-visitor-keys": "^1.1.0" + "eslint-visitor-keys": "^1.2.0" }, "devDependencies": { - "@mysticatea/eslint-plugin": "^12.0.0", + "@mysticatea/eslint-plugin": "^13.0.0", "codecov": "^3.6.1", "dot-prop": "^4.2.0", - "eslint": "^6.5.1", + "eslint": "^7.2.0", "esm": "^3.2.25", - "espree": "^6.1.1", + "espree": "^7.1.0", "mocha": "^6.2.2", "npm-run-all": "^4.1.5", "nyc": "^14.1.1", @@ -28,10 +28,12 @@ "rimraf": "^3.0.0", "rollup": "^1.25.0", "rollup-plugin-sourcemaps": "^0.4.2", - "semver": "^7.3.2", "vuepress": "^1.2.0", "warun": "^1.0.0" }, + "peerDependencies": { + "eslint": ">=5" + }, "scripts": { "prebuild": "npm run -s clean", "build": "rollup -c", @@ -60,6 +62,5 @@ "bugs": { "url": "https://github.com/mysticatea/eslint-utils/issues" }, - "homepage": "https://github.com/mysticatea/eslint-utils#readme", - "funding": "https://github.com/sponsors/mysticatea" + "homepage": "https://github.com/mysticatea/eslint-utils#readme" }