From be7605cdef9ccf160acece3f9ea8b2ce8c641ba2 Mon Sep 17 00:00:00 2001 From: Adam Chalmers Date: Thu, 27 Jul 2023 12:13:51 -0500 Subject: [PATCH] Git pre-push hook to check formatting (#200) Add formatting check to Git pre-push hook --- .github/workflows/format.yml | 2 +- .husky/pre-push | 4 ++++ package.json | 4 +++- src/useStore.ts | 2 +- yarn.lock | 5 +++++ 5 files changed, 14 insertions(+), 3 deletions(-) create mode 100755 .husky/pre-push diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml index 70746682c..1bc1df77c 100644 --- a/.github/workflows/format.yml +++ b/.github/workflows/format.yml @@ -13,4 +13,4 @@ jobs: with: node-version: '16.x' - run: yarn install - - run: yarn prettier --check src jest.config.ts + - run: yarn fmt-check diff --git a/.husky/pre-push b/.husky/pre-push new file mode 100755 index 000000000..8a17e3f29 --- /dev/null +++ b/.husky/pre-push @@ -0,0 +1,4 @@ +#!/usr/bin/env sh +. "$(dirname -- "$0")/_/husky.sh" + +yarn fmt-check diff --git a/package.json b/package.json index e2bb8c366..b3bea2c95 100644 --- a/package.json +++ b/package.json @@ -51,7 +51,8 @@ "test:cov": "jest --watchAll=false --coverage=true --forceExit", "simpleserver:ci": "http-server ./public --cors -p 3000 &", "simpleserver": "http-server ./public --cors -p 3000", - "fmt": "prettier --write ./src/**/*.{ts,tsx,js} && prettier --write ./src/**/**/*.{ts,tsx,js}", + "fmt": "prettier --write ./src/**/*.{ts,tsx,js} ./src/**/**/*.{ts,tsx,js} src/**/*.{ts,tsx,js}", + "fmt-check": "prettier --check ./src/**/*.{ts,tsx,js} ./src/**/**/*.{ts,tsx,js} src/**/*.{ts,tsx,js}", "build:wasm": "yarn wasm-prep && (cd src/wasm-lib && wasm-pack build --target web --out-dir pkg) && cp src/wasm-lib/pkg/wasm_lib_bg.wasm public && yarn fmt && yarn remove-importmeta", "remove-importmeta": "sed -i 's/import.meta.url//g' \"./src/wasm-lib/pkg/wasm_lib.js\"; sed -i '' 's/import.meta.url//g' \"./src/wasm-lib/pkg/wasm_lib.js\" || echo \"sed for both mac and linux\"", "wasm-prep": "rm -rf src/wasm-lib/pkg && mkdir src/wasm-lib/pkg", @@ -88,6 +89,7 @@ "eslint": "^8.44.0", "eslint-config-react-app": "^7.0.1", "eslint-plugin-css-modules": "^2.11.0", + "husky": "^8.0.3", "isomorphic-fetch": "^3.0.0", "jest": "^29.6.1", "jest-environment-jsdom": "^29.6.1", diff --git a/src/useStore.ts b/src/useStore.ts index 8acc6ed9c..aeda9592e 100644 --- a/src/useStore.ts +++ b/src/useStore.ts @@ -263,7 +263,7 @@ export const useStore = create()( set((state) => ({ kclErrors: [...state.kclErrors, e] })) }, resetKCLErrors: () => { - set({ kclErrors: []}) + set({ kclErrors: [] }) }, ast: null, setAst: (ast) => { diff --git a/yarn.lock b/yarn.lock index ee9fe5bbb..8a6a668cc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4269,6 +4269,11 @@ human-signals@^2.1.0: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== +husky@^8.0.3: + version "8.0.3" + resolved "https://registry.yarnpkg.com/husky/-/husky-8.0.3.tgz#4936d7212e46d1dea28fef29bb3a108872cd9184" + integrity sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg== + iconv-lite@0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501"