fix: husky can not auto install issue after upgrade. by Koooooo-7 · Pull Request #2325 · docsifyjs/docsify

Conversation

@Koooooo-7

Summary

Add husky hooks and auto trigger it by preinstall.
close #2292

Related issue, if any:

What kind of change does this PR introduce?

Bugfix

For any code change,

  • Related documentation has been updated, if needed
  • Related tests have been added or updated, if needed

Does this PR introduce a breaking change?

No

Yes
No

Tested in the following browsers:

  • Chrome
  • Firefox
  • Safari
  • Edge

@vercel

@Koooooo-7

Hi @trusktr, I don't have a Windows in hand. could plz take a test on Win ? thx.

No bash compatibility issue now.

jhildenbiddle

@Koooooo-7

Hi @jhildenbiddle , thx for you thoughts!
I believe it should work after we preset the .husky/ hooks in project which I also test locally and in codespace/gitpod .

"postinstall": "opencollective-postinstall && npx husky install",

So I remove the useless husky.sh now and leave the npx husky install in postinstall in order to auto enable the hooks.

sy-records

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

> docsify@4.13.0 prettier
> prettier . --write

.eslintrc.cjs 63ms
.github/dependabot.yml 39ms
.github/ISSUE_TEMPLATE/bug_report.md 50ms
.github/ISSUE_TEMPLATE/config.yml 3ms
.github/ISSUE_TEMPLATE/feature_request.md 5ms
.github/PULL_REQUEST_TEMPLATE.md 6ms
.github/semantic.yml 3ms
.github/workflows/test.yml 14ms
.gitpod.yml 4ms
.prettierrc.json 4ms
.vscode/launch.json 5ms
.vscode/settings.json 2ms
babel.config.json 1ms
build/build.js 40ms
build/cover.js 7ms
build/css.js 9ms
build/emoji.js 17ms
build/mincss.js 7ms
build/util.js 3ms
CONTRIBUTING.md 29ms
docs/_coverpage.md 3ms
docs/_media/example-with-yaml.md 3ms
docs/_media/example.html 32ms
docs/_media/example.js 4ms
docs/_media/example.md 1ms
docs/_navbar.md 5ms
docs/_sidebar.md 7ms
docs/cdn.md 20ms
docs/configuration.md 222ms
docs/cover.md 15ms
docs/custom-navbar.md 23ms
docs/deploy.md 28ms
docs/embed-files.md 40ms
docs/emoji.md 161ms
docs/helpers.md 25ms
docs/index.html 29ms
docs/language-highlight.md 12ms
docs/markdown.md 9ms
docs/more-pages.md 24ms
docs/plugins.md 30ms
docs/pwa.md 20ms
docs/quickstart.md 20ms
docs/README.md 5ms
docs/themes.md 3ms
docs/vue.md 47ms
docs/write-a-plugin.md 39ms
jest.config.js 4ms
middleware.js 5ms
package-lock.json 199ms
package.json 2ms
playwright.config.js 5ms
README.md 8ms
SECURITY.md 6ms
server.configs.js 6ms
server.js 3ms
src/core/config.js 9ms
src/core/Docsify.js 6ms
src/core/event/index.js 36ms
src/core/fetch/index.js 19ms
src/core/global-api.js 2ms
src/core/index.js 2ms
src/core/init/lifecycle.js 5ms
src/core/render/compiler.js 30ms
src/core/render/compiler/code.js 3ms
src/core/render/compiler/headline.js 3ms
src/core/render/compiler/image.js 4ms
src/core/render/compiler/link.js 6ms
src/core/render/compiler/paragraph.js 2ms
src/core/render/compiler/taskList.js 3ms
src/core/render/compiler/taskListItem.js 3ms
src/core/render/embed.js 13ms
src/core/render/emojify.js 6ms
src/core/render/gen-tree.js 3ms
src/core/render/index.js 34ms
src/core/render/progressbar.js 5ms
src/core/render/slugify.js 3ms
src/core/render/tpl.js 7ms
src/core/render/utils.js 5ms
src/core/router/history/base.js 10ms
src/core/router/history/hash.js 10ms
src/core/router/history/html5.js 7ms
src/core/router/index.js 6ms
src/core/router/util.js 12ms
src/core/util/ajax.js 8ms
src/core/util/core.js 5ms
src/core/util/dom.js 6ms
src/core/util/env.js 2ms
src/core/util/index.js 1ms
src/core/virtual-routes/exact-match.js 2ms
src/core/virtual-routes/index.js 5ms
src/core/virtual-routes/next.js 2ms
src/plugins/disqus.js 5ms
src/plugins/emoji.js 2ms
src/plugins/external-script.js 3ms
src/plugins/front-matter/index.js 3ms
src/plugins/front-matter/parser.js 4ms
src/plugins/front-matter/yaml.js 31ms
src/plugins/ga.js 4ms
src/plugins/gitalk.js 3ms
src/plugins/gtag.js 4ms
src/plugins/matomo.js 5ms
src/plugins/search/component.js 11ms
src/plugins/search/index.js 6ms
src/plugins/search/search.js 18ms
src/plugins/zoom-image.js 3ms
test/config/jest.setup-tests.js 6ms
test/config/jest.setup.js 2ms
test/config/jest.teardown.js 1ms
test/config/playwright.setup.js 1ms
test/config/playwright.teardown.js 1ms
test/config/server.js 3ms
test/e2e/.eslintrc.cjs 2ms
test/e2e/configuration.test.js 15ms
test/e2e/example.test.js 16ms
test/e2e/fixtures/docsify-init-fixture.js 2ms
test/e2e/gtag.test.js 5ms
test/e2e/index-file.test.js 3ms
test/e2e/plugins.test.js 14ms
test/e2e/search.test.js 12ms
test/e2e/security.test.js 4ms
test/e2e/sidebar.test.js 5ms
test/e2e/virtual-routes.test.js 13ms
test/e2e/vue.test.js 12ms
test/helpers/docsify-init.js 23ms
test/helpers/wait-for.js 6ms
test/integration/.eslintrc.cjs 1ms
test/integration/docs.test.js 5ms
test/integration/docsify.test.js 4ms
test/integration/emoji.test.js 8ms
test/integration/example.test.js 7ms
test/integration/global-apis.test.js 3ms
test/integration/render.test.js 13ms
test/README.md 4ms
test/unit/.eslintrc.cjs 1ms
test/unit/core-util.test.js 4ms
test/unit/render-util.test.js 7ms
test/unit/router-history-base.test.js 5ms
test/unit/router-util.test.js 2ms
vercel.json 1ms
✔ Preparing lint-staged...
✔ Running tasks for staged files...
✔ Applying modifications from tasks...
✔ Cleaning up temporary files...

@Koooooo-7

Merged per to maintain rules.