From ea25ab992447e721534cbb282237377397557b36 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Mon, 29 Jan 2024 11:04:36 -0500 Subject: [PATCH] ci: only format and lint changed files --- .eslintignore | 3 +++ .eslintrc.cjs | 2 +- .prettierignore | 3 +++ package.json | 11 +++++++++-- scripts/changed-files | 3 +++ 5 files changed, 19 insertions(+), 3 deletions(-) create mode 100644 .eslintignore create mode 100644 .prettierignore create mode 100755 scripts/changed-files diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 0000000..113f29b --- /dev/null +++ b/.eslintignore @@ -0,0 +1,3 @@ +scripts/* +.eslintignore +.prettierignore diff --git a/.eslintrc.cjs b/.eslintrc.cjs index 0bd04ba..f862385 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -11,7 +11,7 @@ module.exports = { 'plugin:svelte/recommended', 'prettier', ], - plugins: ['svelte', 'simple-import-sort'], + plugins: ['svelte', 'simple-import-sort', 'json-files'], rules: { 'simple-import-sort/imports': 'error', }, diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..113f29b --- /dev/null +++ b/.prettierignore @@ -0,0 +1,3 @@ +scripts/* +.eslintignore +.prettierignore diff --git a/package.json b/package.json index 469ce5d..aeb72d7 100644 --- a/package.json +++ b/package.json @@ -44,13 +44,19 @@ ], "scripts": { "toc": "doctoc README.md", - "lint": "(prettier . --check || true) && eslint .", + "lint": "prettier . --check && eslint .", + "lint:delta": "npm-run-all -p prettier:delta eslint:delta", + "prettier:delta": "prettier --check `./scripts/changed-files`", + "eslint:delta": "eslint `./scripts/changed-files`", "format": "prettier . --write && eslint . --fix", + "format:delta": "npm-run-all format:prettier:delta format:eslint:delta", + "format:prettier:delta": "prettier --write `./scripts/changed-files`", + "format:eslint:delta": "eslint --fix `./scripts/changed-files`", "test": "vitest run --coverage", "test:watch": "vitest", "test:update": "vitest run --update", "setup": "npm install && npm run validate", - "validate": "npm-run-all lint test", + "validate": "npm-run-all lint:delta test", "contributors:add": "all-contributors add", "contributors:generate": "all-contributors generate" }, @@ -74,6 +80,7 @@ "eslint-config-prettier": "^9.1.0", "eslint-config-standard": "^17.1.0", "eslint-plugin-import": "^2.27.5", + "eslint-plugin-json-files": "^4.1.0", "eslint-plugin-n": "^16.0.1", "eslint-plugin-promise": "^6.1.1", "eslint-plugin-simple-import-sort": "^10.0.0", diff --git a/scripts/changed-files b/scripts/changed-files new file mode 100755 index 0000000..1275bd8 --- /dev/null +++ b/scripts/changed-files @@ -0,0 +1,3 @@ +#!/usr/bin/env bash + +git diff --name-only --diff-filter=d main