* chore(TODO.md): mark "show new version available message" as completed

* chore(package.json): add `--tag latest` flag to `npm publish` command in `deploy` script
* refactor(cli.ts): add async/await to `prepareCommitMessageHook` and `commit` functions, and check for new version of `opencommit` after commit is made
This commit is contained in:
di-sukharev
2023-03-11 00:57:48 +08:00
parent f49f1a86df
commit 69f3c48b2c
3 changed files with 12 additions and 5 deletions
+1 -1
View File
@@ -1,7 +1,7 @@
# TODOs # TODOs
- [x] set prepare-commit-msg hook - [x] set prepare-commit-msg hook
- [] show "new version available" message, look into this commit e146d4d cli.ts file - [x] show "new version available" message, look into this commit e146d4d cli.ts file
- [] make bundle smaller by properly configuring esbuild - [] make bundle smaller by properly configuring esbuild
- [] [build for both mjs and cjs](https://snyk.io/blog/best-practices-create-modern-npm-package/) - [] [build for both mjs and cjs](https://snyk.io/blog/best-practices-create-modern-npm-package/)
- [] do // TODOs in the code - [] do // TODOs in the code
+1 -1
View File
@@ -41,7 +41,7 @@
"start": "node ./out/cli.cjs", "start": "node ./out/cli.cjs",
"dev": "ts-node ./src/cli.ts", "dev": "ts-node ./src/cli.ts",
"build": "rimraf out && esbuild ./src/cli.ts --bundle --outfile=out/cli.cjs --format=cjs --platform=node", "build": "rimraf out && esbuild ./src/cli.ts --bundle --outfile=out/cli.cjs --format=cjs --platform=node",
"deploy": "npm run build && npm version patch && npm publish", "deploy": "npm run build && npm version patch && npm publish --tag latest",
"lint": "eslint src --ext ts && tsc --noEmit" "lint": "eslint src --ext ts && tsc --noEmit"
}, },
"devDependencies": { "devDependencies": {
+10 -3
View File
@@ -21,11 +21,18 @@ cli(
ignoreArgv: (type) => type === 'unknown-flag' || type === 'argument', ignoreArgv: (type) => type === 'unknown-flag' || type === 'argument',
help: { description: packageJSON.description } help: { description: packageJSON.description }
}, },
() => { async () => {
if (isHookCalled) { if (isHookCalled) {
prepareCommitMessageHook(); await prepareCommitMessageHook();
} else { } else {
commit(); await commit();
const { stdout } = await execa('npm', ['view', 'opencommit', 'version']);
if (stdout !== packageJSON.version) {
outro(
'new opencommit version is available, update with `npm i -g opencommit`'
);
}
} }
}, },
rawArgv rawArgv