diff --git a/.github/TODO.md b/.github/TODO.md index f0ce2b8..aa07091 100644 --- a/.github/TODO.md +++ b/.github/TODO.md @@ -1,7 +1,7 @@ # TODOs - [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 - [] [build for both mjs and cjs](https://snyk.io/blog/best-practices-create-modern-npm-package/) - [] do // TODOs in the code diff --git a/package.json b/package.json index 11b9881..14d7d13 100644 --- a/package.json +++ b/package.json @@ -41,7 +41,7 @@ "start": "node ./out/cli.cjs", "dev": "ts-node ./src/cli.ts", "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" }, "devDependencies": { diff --git a/src/cli.ts b/src/cli.ts index e669ce4..82ff083 100755 --- a/src/cli.ts +++ b/src/cli.ts @@ -21,11 +21,18 @@ cli( ignoreArgv: (type) => type === 'unknown-flag' || type === 'argument', help: { description: packageJSON.description } }, - () => { + async () => { if (isHookCalled) { - prepareCommitMessageHook(); + await prepareCommitMessageHook(); } 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