simplifies git hooks

This commit is contained in:
Lars Berning 2021-05-21 13:44:50 +02:00
parent db7559e640
commit a618419702
No known key found for this signature in database
GPG Key ID: 028E73C9E1D8A0B3
6 changed files with 30 additions and 75 deletions

1
.husky/.gitignore vendored
View File

@ -1 +0,0 @@
_

View File

@ -1,5 +0,0 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
npm run lint
npm test

View File

@ -53,7 +53,7 @@ function createCentralManager () {
const emitter = new EventEmitter()
let batteryLevel
noble.on('stateChange', function (state) {
noble.on('stateChange', (state) => {
if (state === 'poweredOn') {
// search for heart rate service
noble.startScanning(['180d'], false)

View File

@ -8,6 +8,8 @@ This is the very minimalistic Backlog for further development of this project.
* validate FTMS with more training applications and harden implementation (i.e. Holofit and Coxswain)
* record a longer rowing session and analyze two encountered problems: 1) rarely the stroke rate doubles for a short duration (might be a problem with stroke detection when measurements are imprecise), 2) in one occasion the measured power jumped to a very high value after a break (40000 watts)
* add an option to select the damper setting in the Web UI
* extract the start and update script into a bin folder and symbolic link them for convenience
* add an option to only consider every nth impulse (combine them)
## Later

79
package-lock.json generated
View File

@ -1,6 +1,6 @@
{
"name": "openrowingmonitor",
"version": "0.7.1",
"version": "0.7.2",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@ -79,16 +79,6 @@
}
}
},
"@cush/exec": {
"version": "1.7.1",
"resolved": "https://registry.npmjs.org/@cush/exec/-/exec-1.7.1.tgz",
"integrity": "sha512-VhUZ39FqmWhXqMiKKsV1XzcNt0jTnc/vYYCn1TYHttrW1QGYWweD+f7MlgPABfLsAQDhYLVTvOjPdfY+1o0nsA==",
"dev": true,
"requires": {
"shell-quote": "^1.7.2",
"type-error": "^1.0.2"
}
},
"@eslint/eslintrc": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.1.tgz",
@ -621,9 +611,9 @@
"dev": true
},
"cacache": {
"version": "15.0.6",
"resolved": "https://registry.npmjs.org/cacache/-/cacache-15.0.6.tgz",
"integrity": "sha512-g1WYDMct/jzW+JdWEyjaX2zoBkZ6ZT9VpOyp2I/VMtDsNLffNat3kqPFfi1eDRSK9/SuKGyORDHcQMcPF8sQ/w==",
"version": "15.1.0",
"resolved": "https://registry.npmjs.org/cacache/-/cacache-15.1.0.tgz",
"integrity": "sha512-mfx0C+mCfWjD1PnwQ9yaOrwG1ou9FkKnx0SvzUHWdFt7r7GaRtzT+9M8HAvLu62zIHtnpQ/1m93nWNDCckJGXQ==",
"dev": true,
"requires": {
"@npmcli/move-file": "^1.0.1",
@ -1570,12 +1560,6 @@
}
}
},
"find-dependency": {
"version": "1.3.3",
"resolved": "https://registry.npmjs.org/find-dependency/-/find-dependency-1.3.3.tgz",
"integrity": "sha512-Fs4jjANCEF0ZQRXxoqU1XQFrC8D3gTs+xnluUu+2TR+02g3d05q6b6ucyWMkXOQoTUXAoMznG7V+EksSmvGhfQ==",
"dev": true
},
"find-up": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
@ -1881,12 +1865,6 @@
"ms": "^2.0.0"
}
},
"husky": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/husky/-/husky-6.0.0.tgz",
"integrity": "sha512-SQS2gDTB7tBN486QSoKPKQItZw97BMOd+Kdb6ghfpBc0yXyzrddI0oDV5MkDAbuB4X2mO3/nj60TRMcYxwzZeQ==",
"dev": true
},
"iconv-lite": {
"version": "0.4.24",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
@ -2457,12 +2435,6 @@
"resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz",
"integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA=="
},
"mini-debounce": {
"version": "1.0.8",
"resolved": "https://registry.npmjs.org/mini-debounce/-/mini-debounce-1.0.8.tgz",
"integrity": "sha512-EqUsV34zuw2N9UHjRl1bwaDiLe1d/P8AemSp/EbDjOsZ7gB+z+7F9wcJWqfU3QpPnHD1oKGe2n6Fw90QsLkBkA==",
"dev": true
},
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
@ -2969,9 +2941,9 @@
}
},
"npm-registry-fetch": {
"version": "10.1.1",
"resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-10.1.1.tgz",
"integrity": "sha512-F6a3l+ffCQ7hvvN16YG5bpm1rPZntCg66PLHDQ1apWJPOCUVHoKnL2w5fqEaTVhp42dmossTyXeR7hTGirfXrg==",
"version": "10.1.2",
"resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-10.1.2.tgz",
"integrity": "sha512-KsM/TdPmntqgBFlfsbkOLkkE9ovZo7VpVcd+/eTdYszCrgy5zFl5JzWm+OxavFaEWlbkirpkou+ZYI00RmOBFA==",
"dev": true,
"requires": {
"lru-cache": "^6.0.0",
@ -3828,6 +3800,12 @@
"simple-concat": "^1.0.0"
}
},
"simple-git-hooks": {
"version": "2.4.1",
"resolved": "https://registry.npmjs.org/simple-git-hooks/-/simple-git-hooks-2.4.1.tgz",
"integrity": "sha512-LFdiF7O0Hg96vS1mO8gtBiDXLkCrLhqpU7O3gMZVO90Uf+/VFY4C5VJITyXPbHNX6OnlFmiFR0YnV4XbfguZHA==",
"dev": true
},
"slice-ansi": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz",
@ -3878,9 +3856,9 @@
"dev": true
},
"snowpack": {
"version": "3.4.0",
"resolved": "https://registry.npmjs.org/snowpack/-/snowpack-3.4.0.tgz",
"integrity": "sha512-11kiRbqbmagFagjxYB9V3L0stZq7G9mkaaUCwSDbHj2YLc3zWKuOoBCeWAPwQeUCGMEFadHaftJmPttUBujKcw==",
"version": "3.5.0",
"resolved": "https://registry.npmjs.org/snowpack/-/snowpack-3.5.0.tgz",
"integrity": "sha512-RlQbyXlILgGKYkvlYHzDydM1V2xAgQ5ZQsb/BUlkzAqNlbFSbyM2Genfw3eWTfk6o5kG0BrpdAmyGcTpN1Q+UQ==",
"dev": true,
"requires": {
"cli-spinners": "^2.5.0",
@ -4093,9 +4071,9 @@
},
"dependencies": {
"ajv": {
"version": "8.4.0",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-8.4.0.tgz",
"integrity": "sha512-7QD2l6+KBSLwf+7MuYocbWvRPdOu63/trReTLu2KFwkgctnub1auoF+Y1WYcm09CTM7quuscrzqmASaLHC/K4Q==",
"version": "8.5.0",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-8.5.0.tgz",
"integrity": "sha512-Y2l399Tt1AguU3BPRP9Fn4eN+Or+StUGWCUpbnFyXSo8NZ9S4uj+AG2pjs5apK+ZMOwYOz1+a+VKvKH7CudXgQ==",
"dev": true,
"requires": {
"fast-deep-equal": "^3.1.1",
@ -4250,12 +4228,6 @@
"prelude-ls": "^1.2.1"
}
},
"type-error": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/type-error/-/type-error-1.0.3.tgz",
"integrity": "sha512-hlNA4NwwjtL9clb8nv+x/5C45uzxND+N+h+/y3z2dYdubGSmdtNtJjHVH4E68ZHR98Bkav4ACf1lmTZepc/4sg==",
"dev": true
},
"type-fest": {
"version": "0.8.1",
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
@ -4360,19 +4332,6 @@
"totalist": "^2.0.0"
}
},
"uvu-watch": {
"version": "1.0.11",
"resolved": "https://registry.npmjs.org/uvu-watch/-/uvu-watch-1.0.11.tgz",
"integrity": "sha512-qCfqYfW+kIkCgSNPfBk45yVnLYXEDGia+4BEg4J0qVTnmrI1wje9BUvJtaYzFkV11fJZcc54d3fB2UWTjq5H8Q==",
"dev": true,
"requires": {
"@cush/exec": "^1.6.4",
"find-dependency": "^1.3.0",
"kleur": "^4.1.4",
"mini-debounce": "^1.0.8",
"sade": "^1.7.4"
}
},
"v8-compile-cache": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",

View File

@ -1,6 +1,6 @@
{
"name": "openrowingmonitor",
"version": "0.7.1",
"version": "0.7.2",
"description": "A rowing monitor for rowing exercise machines",
"main": "app/server.js",
"author": "Lars Berning",
@ -14,14 +14,15 @@
"node": ">=14"
},
"scripts": {
"prepare": "husky install",
"lint": "eslint ./app && markdownlint '**/*.md' --ignore node_modules",
"start": "node app/server.js",
"dev": "npm-run-all --parallel start build:watch",
"build": "snowpack build",
"build:watch": "snowpack build --watch",
"test": "uvu",
"test:watch": "uvu --watch"
"test": "uvu"
},
"simple-git-hooks": {
"pre-commit": "npm run lint && npm test"
},
"dependencies": {
"@abandonware/bleno": "^0.5.1-4",
@ -41,11 +42,10 @@
"eslint-plugin-import": "^2.22.1",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^5.1.0",
"husky": "^6.0.0",
"markdownlint-cli": "^0.27.1",
"npm-run-all": "^4.1.5",
"snowpack": "^3.3.7",
"uvu": "^0.5.1",
"uvu-watch": "^1.0.11"
"simple-git-hooks": "^2.4.1",
"snowpack": "^3.5.0",
"uvu": "^0.5.1"
}
}