typicode/husky
### [`v6.0.0`](https://togithub.com/typicode/husky/releases/v6.0.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v5.2.0...v6.0.0)
After being in early access for Open Source projects and Sponsors for a limited time, **I'm happy to announce that husky 6 is MIT again** and can be freely used in commercial projects! 🎉
**Many thanks to the [Open Source projects](https://typicode.github.io/husky/#/?id=used-by) and Companies which have switched to/sponsored the new husky during this period!**
*OSS is my full-time job, please consider sponsoring the development of husky on [GitHub sponsors](https://togithub.com/sponsors/typicode) or [Open Collective](https://opencollective.com/husky). Thank you!*
### Breaking change
- `husky init` has been moved to its own package (`npx husky-init`)
### Added
- Programmatically use husky: `require('husky')`
- TypeScript definitions
### Migrating from husky 4
Husky 6 contains breaking changes. If you're coming from v4, `npm install husky@6` won't be enough.
**Recommended:** see [husky-4-to-6](https://typicode.github.io/husky/#/?id=husky-4-to-6-cli) CLI to automatically migrate your config. There's also a dedicated section in the [docs](https://typicode.github.io/husky/#/?id=migrate-from-v4-to-v6).
**If you're curious why config has changed, you may be interested in reading:**
https://blog.typicode.com/husky-git-hooks-javascript-config/
**Also Husky 6 follows official [npm](https://docs.npmjs.com/cli/v7/using-npm/scripts#best-practices) and [Yarn](https://yarnpkg.com/advanced/lifecycle-scripts#a-note-about-postinstall) best practices regarding autoinstall.** It's recommended to use `prepare` script instead (see [usage](https://typicode.github.io/husky/#/?id=usage) in docs).
### [`v5.2.0`](https://togithub.com/typicode/husky/releases/v5.2.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v5.1.3...v5.2.0)
- Add `set` command to replace hooks (`husky set .husky/pre-commit cmd`)
- Update `add` command to append command (`husky add .husky/pre-commit cmd`)
- Improve error messages
### [`v5.1.3`](https://togithub.com/typicode/husky/releases/v5.1.3)
[Compare Source](https://togithub.com/typicode/husky/compare/v5.1.2...v5.1.3)
- docs: add specific Yarn v2 install/uninstall instructions
- cli: `husky init` will detect Yarn v2 and initialize accordingly
### [`v5.1.2`](https://togithub.com/typicode/husky/releases/v5.1.2)
[Compare Source](https://togithub.com/typicode/husky/compare/v5.1.1...v5.1.2)
- docs: recommend `prepare` script instead of `postinstall` ([#890](https://togithub.com/typicode/husky/issues/890))
- cli: `husky init` use `prepare` script ([#890](https://togithub.com/typicode/husky/issues/890))
### [`v5.1.1`](https://togithub.com/typicode/husky/releases/v5.1.1)
[Compare Source](https://togithub.com/typicode/husky/compare/v5.1.0...v5.1.1)
- style(shell): add trailing newlines ([#870](https://togithub.com/typicode/husky/issues/870))
- fix(init): update package.json postinstall
### [`v5.1.0`](https://togithub.com/typicode/husky/releases/v5.1.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v5.0.9...v5.1.0)
- Add `husky init`
### [`v5.0.9`](https://togithub.com/typicode/husky/releases/v5.0.9)
[Compare Source](https://togithub.com/typicode/husky/compare/v5.0.8...v5.0.9)
- fix(install): do not fail if not inside a Git directory (closes [#851](https://togithub.com/typicode/husky/issues/851))
See https://github.com/typicode/husky/releases/tag/v5.0.0 for v5 release notes
### [`v5.0.8`](https://togithub.com/typicode/husky/releases/v5.0.8)
[Compare Source](https://togithub.com/typicode/husky/compare/v5.0.7...v5.0.8)
- fix(install): better handle Git <2.9 ([#846](https://togithub.com/typicode/husky/issues/846)) closes [#844](https://togithub.com/typicode/husky/issues/844)
### [`v5.0.7`](https://togithub.com/typicode/husky/releases/v5.0.7)
[Compare Source](https://togithub.com/typicode/husky/compare/v5.0.6...v5.0.7)
- fix(shell): double quote params ([#824](https://togithub.com/typicode/husky/issues/824))
### [`v5.0.6`](https://togithub.com/typicode/husky/releases/v5.0.6)
[Compare Source](https://togithub.com/typicode/husky/compare/v5.0.5...v5.0.6)
- Remove unused files
### [`v5.0.5`](https://togithub.com/typicode/husky/releases/v5.0.5)
[Compare Source](https://togithub.com/typicode/husky/compare/v5.0.4...v5.0.5)
- Fix custom directory support [#827](https://togithub.com/typicode/husky/issues/827)
### [`v5.0.4`](https://togithub.com/typicode/husky/compare/v5.0.3...v5.0.4)
[Compare Source](https://togithub.com/typicode/husky/compare/v5.0.3...v5.0.4)
### [`v5.0.3`](https://togithub.com/typicode/husky/compare/v5.0.2...v5.0.3)
[Compare Source](https://togithub.com/typicode/husky/compare/v5.0.2...v5.0.3)
### [`v5.0.2`](https://togithub.com/typicode/husky/compare/v5.0.1...v5.0.2)
[Compare Source](https://togithub.com/typicode/husky/compare/v5.0.1...v5.0.2)
### [`v5.0.1`](https://togithub.com/typicode/husky/compare/v5.0.0...v5.0.1)
[Compare Source](https://togithub.com/typicode/husky/compare/v5.0.0...v5.0.1)
### [`v5.0.0`](https://togithub.com/typicode/husky/releases/v5.0.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.3.8...v5.0.0)
👉 See https://typicode.github.io/husky for breaking changes and new installation instructions.
#### Note about the license
Husky 5 is released under The Parity Public License.
It doesn't affect you if you're using husky in an Open Source project or if you're a sponsor. You're free to use it as usual and I hope you'll enjoy this new release ❤️
If you're using husky in a commercial project, you may want to consider becoming a sponsor to support the project. You can also try it for 30 days.
**This is only for a limited time, husky will be MIT again later.**
#### Migrating
**Important** Husky v5 brings a lot of improvements but is also very different from v4. Git hooks won't work if you only upgrade husky dependency, existing config needs to be migrated too.
The best way to switch to v5 is to follow the new installation instructions and migrate existing hooks command using `husky add`.
### [`v4.3.8`](https://togithub.com/typicode/husky/releases/v4.3.8)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.3.7...v4.3.8)
- Fix `Cannot read property 'toString' of null`
- Improve error messages
### [`v4.3.7`](https://togithub.com/typicode/husky/releases/v4.3.7)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.3.6...v4.3.7)
- Fix: upgrade find-versions to 4.0.0 https://github.com/typicode/husky/pull/837
### [`v4.3.6`](https://togithub.com/typicode/husky/releases/v4.3.6)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.3.5...v4.3.6)
- Fix `prepare-commit-msg` on windows [#737](https://togithub.com/typicode/husky/issues/737)
### [`v4.3.5`](https://togithub.com/typicode/husky/releases/v4.3.5)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.3.4...v4.3.5)
- Rollback and do not throw error if husky install fails
### [`v4.3.4`](https://togithub.com/typicode/husky/releases/v4.3.4)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.3.3...v4.3.4)
- Throw error if husky install fails
- Add workaround for npm 7 currently missing `INIT_CWD` environment variable
### [`v4.3.3`](https://togithub.com/typicode/husky/compare/v4.3.2...v4.3.3)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.3.2...v4.3.3)
### [`v4.3.2`](https://togithub.com/typicode/husky/compare/v4.3.1...v4.3.2)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.3.1...v4.3.2)
### [`v4.3.1`](https://togithub.com/typicode/husky/compare/v4.3.0...v4.3.1)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.3.0...v4.3.1)
### [`v4.3.0`](https://togithub.com/typicode/husky/releases/v4.3.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.2.5...v4.3.0)
- Add `.cjs` config file support [#754](https://togithub.com/typicode/husky/issues/754)
### [`v4.2.5`](https://togithub.com/typicode/husky/releases/v4.2.5)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.2.4...v4.2.5)
- Fix wrong error message [#709](https://togithub.com/typicode/husky/issues/709)
- Update dependencies [#710](https://togithub.com/typicode/husky/issues/710)
### [`v4.2.4`](https://togithub.com/typicode/husky/releases/v4.2.4)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.2.3...v4.2.4)
- When Node version is unsupported, log actual version in addition to the error message [#701](https://togithub.com/typicode/husky/issues/701)
- Fix: support `cnpm` package manager [#687](https://togithub.com/typicode/husky/issues/687)
- Fix: always use `sh` to run scripts and avoid inconsistencies [#707](https://togithub.com/typicode/husky/issues/707)
- Fix: don't throw error if files are already removed during uninstall [#708](https://togithub.com/typicode/husky/issues/708)
### [`v4.2.3`](https://togithub.com/typicode/husky/releases/v4.2.3)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.2.2...v4.2.3)
- Fix: check for `husky.config.js` not `.huskyrc.config.js` [#669](https://togithub.com/typicode/husky/issues/669)
### [`v4.2.2`](https://togithub.com/typicode/husky/releases/v4.2.2)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.2.1...v4.2.2)
- Fix [#662](https://togithub.com/typicode/husky/issues/662) disable fast-skip heuristic for `.husky.js` and `.husky.config.js`
- Fix do not install `update`, `pre/post-receive` hooks
### [`v4.2.1`](https://togithub.com/typicode/husky/releases/v4.2.1)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.2.0...v4.2.1)
- Fix: support spaces in path to husky.local.sh [#658](https://togithub.com/typicode/husky/issues/658)
### [`v4.2.0`](https://togithub.com/typicode/husky/releases/v4.2.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.1.0...v4.2.0)
- Check Git version during install and log an error if it's `<2.13.0`
### [`v4.1.0`](https://togithub.com/typicode/husky/releases/v4.1.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.0.10...v4.1.0)
- Improve speed and refactor hooks
### [`v4.0.10`](https://togithub.com/typicode/husky/compare/v4.0.9...v4.0.10)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.0.9...v4.0.10)
### [`v4.0.9`](https://togithub.com/typicode/husky/releases/v4.0.9)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.0.8...v4.0.9)
- Fix: read stdin from hook script ([#645](https://togithub.com/typicode/husky/issues/645))
### [`v4.0.8`](https://togithub.com/typicode/husky/compare/v4.0.7...v4.0.8)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.0.7...v4.0.8)
### [`v4.0.7`](https://togithub.com/typicode/husky/releases/v4.0.7)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.0.6...v4.0.7)
- Fix: Yarn when running inside `winpty` ([#634](https://togithub.com/typicode/husky/issues/634))
### [`v4.0.6`](https://togithub.com/typicode/husky/releases/v4.0.6)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.0.5...v4.0.6)
- Revert change in v4.0.5
### [`v4.0.5`](https://togithub.com/typicode/husky/releases/v4.0.5)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.0.4...v4.0.5)
- Fix: use process.exit if install fails [#633](https://togithub.com/typicode/husky/issues/633)
### [`v4.0.4`](https://togithub.com/typicode/husky/releases/v4.0.4)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.0.3...v4.0.4)
- Fix: npm ignore `.eslintrc.js` ([#627](https://togithub.com/typicode/husky/issues/627))
### [`v4.0.3`](https://togithub.com/typicode/husky/releases/v4.0.3)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.0.2...v4.0.3)
- Fix: error message if trying to install in a non-git repo ([#627](https://togithub.com/typicode/husky/issues/627))
### [`v4.0.2`](https://togithub.com/typicode/husky/releases/v4.0.2)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.0.1...v4.0.2)
- Fix: show error message when hook fails
### [`v4.0.1`](https://togithub.com/typicode/husky/releases/v4.0.1)
[Compare Source](https://togithub.com/typicode/husky/compare/v4.0.0...v4.0.1)
- Fix: make Yarn silent. When Husky was installed with Yarn 1.21.1, hooks output was too verbose ([#626](https://togithub.com/typicode/husky/issues/626)).
### [`v4.0.0`](https://togithub.com/typicode/husky/releases/v4.0.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v3.1.0...v4.0.0)
- Support `Yarn v2` new Plug'n'Play feature (thanks to [@arcanis](https://togithub.com/arcanis))
- Improve path handling on Windows (in particular with `Cygwin` and `Cmdr`)
- Remove `dependencies` and simplify code
- **Breaking** requires `Node 10+`
**Thanks to all contributors and everyone who is supporting Husky on [Open Collective](https://opencollective.com/husky), [GitHub sponsors](https://togithub.com/sponsors/typicode) and [Patreon](https://www.patreon.com/typicode)!**
### [`v3.1.0`](https://togithub.com/typicode/husky/releases/v3.1.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v3.0.9...v3.1.0)
- Add `pre-merge-commit` hook ([#605](https://togithub.com/typicode/husky/issues/605))
### [`v3.0.9`](https://togithub.com/typicode/husky/releases/v3.0.9)
[Compare Source](https://togithub.com/typicode/husky/compare/v3.0.8...v3.0.9)
- Reduce dependencies: replace `is-ci` with `ci-info` [#579](https://togithub.com/typicode/husky/issues/579)
### [`v3.0.8`](https://togithub.com/typicode/husky/releases/v3.0.8)
[Compare Source](https://togithub.com/typicode/husky/compare/v3.0.7...v3.0.8)
- Fix: git worktree support [#580](https://togithub.com/typicode/husky/issues/580)
- Debug: check `GIT_DIR` environment variable when hooks are run
### [`v3.0.7`](https://togithub.com/typicode/husky/releases/v3.0.7)
[Compare Source](https://togithub.com/typicode/husky/compare/v3.0.6...v3.0.7)
Debug: display husky version and created at
### [`v3.0.6`](https://togithub.com/typicode/husky/releases/v3.0.6)
[Compare Source](https://togithub.com/typicode/husky/compare/v3.0.5...v3.0.6)
Debug: improve messages
### [`v3.0.5`](https://togithub.com/typicode/husky/releases/v3.0.5)
[Compare Source](https://togithub.com/typicode/husky/compare/v3.0.4...v3.0.5)
Fix: prevent `postinstall` from failing on windows https://github.com/typicode/husky/pull/573
### [`v3.0.4`](https://togithub.com/typicode/husky/releases/v3.0.4)
[Compare Source](https://togithub.com/typicode/husky/compare/v3.0.3...v3.0.4)
Fix: skip install earlier when `HUSKY_SKIP_INSTALL=1` (https://github.com/typicode/husky/issues/563)
### [`v3.0.3`](https://togithub.com/typicode/husky/releases/v3.0.3)
[Compare Source](https://togithub.com/typicode/husky/compare/v3.0.2...v3.0.3)
Fix: prevent old hooks (husky `< 1.0`) to be run if new ones are defined (husky `>= 1.0` ) https://github.com/typicode/husky/issues/556
### [`v3.0.2`](https://togithub.com/typicode/husky/releases/v3.0.2)
[Compare Source](https://togithub.com/typicode/husky/compare/v3.0.1...v3.0.2)
- Fix: add shebang to run.js ([#528](https://togithub.com/typicode/husky/issues/528))
### [`v3.0.1`](https://togithub.com/typicode/husky/releases/v3.0.1)
[Compare Source](https://togithub.com/typicode/husky/compare/v3.0.0...v3.0.1)
- Improve error message if git command fails
### [`v3.0.0`](https://togithub.com/typicode/husky/releases/v3.0.0)
[Compare Source](https://togithub.com/typicode/husky/compare/df97af21254ca033a05346df3deb61c046b9ea12...v3.0.0)
- Fix HUSKY_SKIP_INSTALL=1 not skipping install
- **Breaking change** husky requires now Git `>= 2.13.2`. If you're already using husky `v2` and don't use an old version of Git, you can safely upgrade.
### [`v2.7.0`](https://togithub.com/typicode/husky/compare/v2.6.0...df97af21254ca033a05346df3deb61c046b9ea12)
[Compare Source](https://togithub.com/typicode/husky/compare/v2.6.0...df97af21254ca033a05346df3deb61c046b9ea12)
### [`v2.6.0`](https://togithub.com/typicode/husky/compare/v2.5.0...v2.6.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v2.5.0...v2.6.0)
### [`v2.5.0`](https://togithub.com/typicode/husky/compare/v2.4.1...v2.5.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v2.4.1...v2.5.0)
### [`v2.4.1`](https://togithub.com/typicode/husky/compare/v2.4.0...v2.4.1)
[Compare Source](https://togithub.com/typicode/husky/compare/v2.4.0...v2.4.1)
### [`v2.4.0`](https://togithub.com/typicode/husky/compare/v2.3.0...v2.4.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v2.3.0...v2.4.0)
### [`v2.3.0`](https://togithub.com/typicode/husky/compare/v2.2.0...v2.3.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v2.2.0...v2.3.0)
### [`v2.2.0`](https://togithub.com/typicode/husky/compare/v2.1.0...v2.2.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v2.1.0...v2.2.0)
### [`v2.1.0`](https://togithub.com/typicode/husky/compare/v2.0.0...v2.1.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v2.0.0...v2.1.0)
### [`v2.0.0`](https://togithub.com/typicode/husky/compare/v1.3.1...v2.0.0)
[Compare Source](https://togithub.com/typicode/husky/compare/v1.3.1...v2.0.0)
dankogai/js-combinatorics
### [`v1.4.5`](https://togithub.com/dankogai/js-combinatorics/compare/1.4.4...1.4.5)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.4.4...1.4.5)
### [`v1.4.4`](https://togithub.com/dankogai/js-combinatorics/compare/1.4.3...1.4.4)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.4.3...1.4.4)
### [`v1.4.3`](https://togithub.com/dankogai/js-combinatorics/compare/1.4.2...1.4.3)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.4.2...1.4.3)
### [`v1.4.2`](https://togithub.com/dankogai/js-combinatorics/compare/1.4.1...1.4.2)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.4.1...1.4.2)
### [`v1.4.1`](https://togithub.com/dankogai/js-combinatorics/compare/1.4.0...1.4.1)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.4.0...1.4.1)
### [`v1.4.0`](https://togithub.com/dankogai/js-combinatorics/compare/1.3.0...1.4.0)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.3.0...1.4.0)
### [`v1.3.0`](https://togithub.com/dankogai/js-combinatorics/compare/1.2.3...1.3.0)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.2.3...1.3.0)
### [`v1.2.3`](https://togithub.com/dankogai/js-combinatorics/compare/1.2.2...1.2.3)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.2.2...1.2.3)
### [`v1.2.2`](https://togithub.com/dankogai/js-combinatorics/compare/1.2.1...1.2.2)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.2.1...1.2.2)
### [`v1.2.1`](https://togithub.com/dankogai/js-combinatorics/compare/1.2.0...1.2.1)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.2.0...1.2.1)
### [`v1.2.0`](https://togithub.com/dankogai/js-combinatorics/compare/1.1.1...1.2.0)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.1.1...1.2.0)
### [`v1.1.1`](https://togithub.com/dankogai/js-combinatorics/compare/1.1.0...1.1.1)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.1.0...1.1.1)
### [`v1.1.0`](https://togithub.com/dankogai/js-combinatorics/compare/1.0.0...1.1.0)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.0.0...1.1.0)
### [`v1.0.0`](https://togithub.com/dankogai/js-combinatorics/compare/0.6.1...1.0.0)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/0.6.1...1.0.0)
### [`v0.6.1`](https://togithub.com/dankogai/js-combinatorics/compare/0.6.0...0.6.1)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/0.6.0...0.6.1)
### [`v0.6.0`](https://togithub.com/dankogai/js-combinatorics/compare/0.5.5...0.6.0)
[Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/0.5.5...0.6.0)
mochajs/mocha
### [`v9.0.0`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#900--2021-06-07)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v8.4.0...v9.0.0)
#### :boom: Breaking Changes
- [#4633](https://togithub.com/mochajs/mocha/issues/4633): **Drop Node.js v10.x support** ([**@juergba**](https://togithub.com/juergba))
- [#4635](https://togithub.com/mochajs/mocha/issues/4635): `import`-first loading of test files ([**@giltayar**](https://togithub.com/giltayar))
**Mocha is going ESM-first!** This means that it will now use ESM `import(test_file)` to load the test files, instead of the CommonJS `require(test_file)`. This is not a problem, as `import` can also load most files that `require` does. In the rare cases where this fails, it will fallback to `require(...)`. This ESM-first approach is the next step in Mocha's ESM migration, and allows ESM loaders to load and transform the test file.
- [#4636](https://togithub.com/mochajs/mocha/issues/4636): Remove deprecated `utils.lookupFiles()` ([**@juergba**](https://togithub.com/juergba))
- [#4638](https://togithub.com/mochajs/mocha/issues/4638): Limit the size of `actual`/`expected` for `diff` generation ([**@juergba**](https://togithub.com/juergba))
- [#4389](https://togithub.com/mochajs/mocha/issues/4389): Refactoring: Consuming log-symbols alternate to code for win32 in reporters/base ([**@MoonSupport**](https://togithub.com/MoonSupport))
#### :tada: Enhancements
- [#4640](https://togithub.com/mochajs/mocha/issues/4640): Add new option `--dry-run` ([**@juergba**](https://togithub.com/juergba))
#### :bug: Fixes
- [#4128](https://togithub.com/mochajs/mocha/issues/4128): Fix: control stringification of error message ([**@syeutyu**](https://togithub.com/syeutyu))
#### :nut_and_bolt: Other
- [#4646](https://togithub.com/mochajs/mocha/issues/4646): Deprecate `Runner(suite: Suite, delay: boolean)` signature ([**@juergba**](https://togithub.com/juergba))
- [#4643](https://togithub.com/mochajs/mocha/issues/4643): Update production dependencies ([**@juergba**](https://togithub.com/juergba))
### [`v8.4.0`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#840--2021-05-07)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v8.3.2...v8.4.0)
#### :tada: Enhancements
- [#4502](https://togithub.com/mochajs/mocha/issues/4502): CLI file parsing errors now have error codes ([**@evaline-ju**](https://togithub.com/evaline-ju))
#### :bug: Fixes
- [#4614](https://togithub.com/mochajs/mocha/issues/4614): Watch: fix crash when reloading files ([**@outsideris**](https://togithub.com/outsideris))
#### :book: Documentation
- [#4630](https://togithub.com/mochajs/mocha/issues/4630): Add `options.require` to Mocha constructor for `root hook` plugins on parallel runs ([**@juergba**](https://togithub.com/juergba))
- [#4617](https://togithub.com/mochajs/mocha/issues/4617): Dynamically generating tests with `top-level await` and ESM test files ([**@juergba**](https://togithub.com/juergba))
- [#4608](https://togithub.com/mochajs/mocha/issues/4608): Update default file extensions ([**@outsideris**](https://togithub.com/outsideris))
Also thanks to [**@outsideris**](https://togithub.com/outsideris) for various improvements on our GH actions workflows.
### [`v8.3.2`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#832--2021-03-12)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v8.3.1...v8.3.2)
#### :bug: Fixes
- [#4599](https://togithub.com/mochajs/mocha/issues/4599): Fix regression in `require` interface ([**@alexander-fenster**](https://togithub.com/alexander-fenster))
#### :book: Documentation
- [#4601](https://togithub.com/mochajs/mocha/issues/4601): Add build to GH actions run ([**@christian-bromann**](https://togithub.com/christian-bromann))
- [#4596](https://togithub.com/mochajs/mocha/issues/4596): Filter active sponsors/backers ([**@juergba**](https://togithub.com/juergba))
- [#4225](https://togithub.com/mochajs/mocha/issues/4225): Update config file examples ([**@pkuczynski**](https://togithub.com/pkuczynski))
### [`v8.3.1`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#831--2021-03-06)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v8.3.0...v8.3.1)
#### :bug: Fixes
- [#4577](https://togithub.com/mochajs/mocha/issues/4577): Browser: fix `EvalError` caused by regenerator-runtime ([**@snoack**](https://togithub.com/snoack))
- [#4574](https://togithub.com/mochajs/mocha/issues/4574): ESM: allow `import` from mocha in parallel mode ([**@nicojs**](https://togithub.com/nicojs))
### [`v8.3.0`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#830--2021-02-11)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v8.2.1...v8.3.0)
#### :tada: Enhancements
- [#4506](https://togithub.com/mochajs/mocha/issues/4506): Add error code for test timeout errors ([**@boneskull**](https://togithub.com/boneskull))
- [#4112](https://togithub.com/mochajs/mocha/issues/4112): Add BigInt support to stringify util function ([**@JosejeSinohui**](https://togithub.com/JosejeSinohui))
#### :bug: Fixes
- [#4557](https://togithub.com/mochajs/mocha/issues/4557): Add file location when SyntaxError happens in ESM ([**@giltayar**](https://togithub.com/giltayar))
- [#4521](https://togithub.com/mochajs/mocha/issues/4521): Fix `require` error when bundling Mocha with Webpack ([**@devhazem**](https://togithub.com/devhazem))
#### :book: Documentation
- [#4507](https://togithub.com/mochajs/mocha/issues/4507): Add support for typescript-style docstrings ([**@boneskull**](https://togithub.com/boneskull))
- [#4503](https://togithub.com/mochajs/mocha/issues/4503): Add GH Actions workflow status badge ([**@outsideris**](https://togithub.com/outsideris))
- [#4494](https://togithub.com/mochajs/mocha/issues/4494): Add example of generating tests dynamically with a closure ([**@maxwellgerber**](https://togithub.com/maxwellgerber))
#### :nut_and_bolt: Other
- [#4556](https://togithub.com/mochajs/mocha/issues/4556): Upgrade all dependencies to latest stable ([**@AviVahl**](https://togithub.com/AviVahl))
- [#4543](https://togithub.com/mochajs/mocha/issues/4543): Update dependencies yargs and yargs-parser ([**@juergba**](https://togithub.com/juergba))
Also thanks to [**@outsideris**](https://togithub.com/outsideris) and [**@HyunSangHan**](https://togithub.com/HyunSangHan) for various fixes to our website and documentation.
### [`v8.2.1`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#821--2020-11-02)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v8.2.0...v8.2.1)
Fixed stuff.
#### :bug: Fixes
- [#4489](https://togithub.com/mochajs/mocha/issues/4489): Fix problematic handling of otherwise-unhandled `Promise` rejections and erroneous "`done()` called twice" errors ([**@boneskull**](https://togithub.com/boneskull))
- [#4496](https://togithub.com/mochajs/mocha/issues/4496): Avoid `MaxListenersExceededWarning` in watch mode ([**@boneskull**](https://togithub.com/boneskull))
Also thanks to [**@akeating**](https://togithub.com/akeating) for a documentation fix!
### [`v8.2.0`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#820--2020-10-16)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v8.1.3...v8.2.0)
The major feature added in v8.2.0 is addition of support for [*global fixtures*](https://mochajs.org/#global-fixtures).
While Mocha has always had the ability to run setup and teardown via a hook (e.g., a `before()` at the top level of a test file) when running tests in serial, Mocha v8.0.0 added support for parallel runs. Parallel runs are *incompatible* with this strategy; e.g., a top-level `before()` would only run for the file in which it was defined.
With [global fixtures](https://mochajs.org/#global-fixtures), Mocha can now perform user-defined setup and teardown *regardless* of mode, and these fixtures are guaranteed to run *once and only once*. This holds for parallel mode, serial mode, and even "watch" mode (the teardown will run once you hit Ctrl-C, just before Mocha finally exits). Tasks such as starting and stopping servers are well-suited to global fixtures, but not sharing resources--global fixtures do *not* share context with your test files (but they do share context with each other).
Here's a short example of usage:
```js
// fixtures.js
// can be async or not
exports.mochaGlobalSetup = async function() {
this.server = await startSomeServer({port: process.env.TEST_PORT});
console.log(`server running on port ${this.server.port}`);
};
exports.mochaGlobalTeardown = async function() {
// the context (`this`) is shared, but not with the test files
await this.server.stop();
console.log(`server on port ${this.server.port} stopped`);
};
// this file can contain root hook plugins as well!
// exports.mochaHooks = { ... }
```
Fixtures are loaded with `--require`, e.g., `mocha --require fixtures.js`.
For detailed information, please see the [documentation](https://mochajs.org/#global-fixtures) and this handy-dandy [flowchart](https://mochajs.org/#test-fixture-decision-tree-wizard-thing) to help understand the differences between hooks, root hook plugins, and global fixtures (and when you should use each).
#### :tada: Enhancements
- [#4308](https://togithub.com/mochajs/mocha/issues/4308): Support run-once [global setup & teardown fixtures](https://mochajs.org/#global-fixtures) ([**@boneskull**](https://togithub.com/boneskull))
- [#4442](https://togithub.com/mochajs/mocha/issues/4442): Multi-part extensions (e.g., `test.js`) now usable with `--extension` option ([**@jordanstephens**](https://togithub.com/jordanstephens))
- [#4472](https://togithub.com/mochajs/mocha/issues/4472): Leading dots (e.g., `.js`, `.test.js`) now usable with `--extension` option ([**@boneskull**](https://togithub.com/boneskull))
- [#4434](https://togithub.com/mochajs/mocha/issues/4434): Output of `json` reporter now contains `speed` ("fast"/"medium"/"slow") property ([**@wwhurin**](https://togithub.com/wwhurin))
- [#4464](https://togithub.com/mochajs/mocha/issues/4464): Errors thrown by serializer in parallel mode now have error codes ([**@evaline-ju**](https://togithub.com/evaline-ju))
*For implementors of custom reporters:*
- [#4409](https://togithub.com/mochajs/mocha/issues/4409): Parallel mode and custom reporter improvements ([**@boneskull**](https://togithub.com/boneskull)):
- Support custom worker-process-only reporters (`Runner.prototype.workerReporter()`); reporters should subclass `ParallelBufferedReporter` in `mocha/lib/nodejs/reporters/parallel-buffered`
- Allow opt-in of object reference matching for "sufficiently advanced" custom reporters (`Runner.prototype.linkPartialObjects()`); use if strict object equality is needed when consuming `Runner` event data
- Enable detection of parallel mode (`Runner.prototype.isParallelMode()`)
#### :bug: Fixes
- [#4476](https://togithub.com/mochajs/mocha/issues/4476): Workaround for profoundly bizarre issue affecting `npm` v6.x causing some of Mocha's deps to be installed when `mocha` is present in a package's `devDependencies` and `npm install --production` is run the package's working copy ([**@boneskull**](https://togithub.com/boneskull))
- [#4465](https://togithub.com/mochajs/mocha/issues/4465): Worker processes guaranteed (as opposed to "very likely") to exit before Mocha does; fixes a problem when using `nyc` with Mocha in parallel mode ([**@boneskull**](https://togithub.com/boneskull))
- [#4419](https://togithub.com/mochajs/mocha/issues/4419): Restore `lookupFiles()` in `mocha/lib/utils`, which was broken/missing in Mocha v8.1.0; it now prints a deprecation warning (use `const {lookupFiles} = require('mocha/lib/cli')` instead) ([**@boneskull**](https://togithub.com/boneskull))
Thanks to [**@AviVahl**](https://togithub.com/AviVahl), [**@donghoon-song**](https://togithub.com/donghoon-song), [**@ValeriaVG**](https://togithub.com/ValeriaVG), [**@znarf**](https://togithub.com/znarf), [**@sujin-park**](https://togithub.com/sujin-park), and [**@majecty**](https://togithub.com/majecty) for other helpful contributions!
### [`v8.1.3`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#813--2020-08-28)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v8.1.2...v8.1.3)
#### :bug: Fixes
- [#4425](https://togithub.com/mochajs/mocha/issues/4425): Restore `Mocha.utils.lookupFiles()` and Webpack compatibility (both broken since v8.1.0); `Mocha.utils.lookupFiles()` is now **deprecated** and will be removed in the next major revision of Mocha; use `require('mocha/lib/cli').lookupFiles` instead ([**@boneskull**](https://togithub.com/boneskull))
### [`v8.1.2`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#812--2020-08-25)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v8.1.1...v8.1.2)
#### :bug: Fixes
- [#4418](https://togithub.com/mochajs/mocha/issues/4418): Fix command-line flag incompatibility in forthcoming Node.js v14.9.0 ([**@boneskull**](https://togithub.com/boneskull))
- [#4401](https://togithub.com/mochajs/mocha/issues/4401): Fix missing global variable in browser ([**@irrationnelle**](https://togithub.com/irrationnelle))
#### :lock: Security Fixes
- [#4396](https://togithub.com/mochajs/mocha/issues/4396): Update many dependencies ([**@GChuf**](https://togithub.com/GChuf))
#### :book: Documentation
- Various fixes by [**@sujin-park**](https://togithub.com/sujin-park), [**@wwhurin**](https://togithub.com/wwhurin) & [**@Donghoon759**](https://togithub.com/Donghoon759)
### [`v8.1.1`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#811--2020-08-04)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v8.1.0...v8.1.1)
#### :bug: Fixes
- [#4394](https://togithub.com/mochajs/mocha/issues/4394): Fix regression wherein certain reporters did not correctly detect terminal width ([**@boneskull**](https://togithub.com/boneskull))
### [`v8.1.0`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#810--2020-07-30)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v8.0.1...v8.1.0)
In this release, Mocha now builds its browser bundle with Rollup and Babel, which will provide the project's codebase more flexibility and consistency.
While we've been diligent about backwards compatibility, it's *possible* consumers of the browser bundle will encounter differences (other than an increase in the bundle size). If you *do* encounter an issue with the build, please [report it here](https://togithub.com/mochajs/mocha/issues/new?labels=unconfirmed-bug\&template=bug_report.md\&title=).
This release **does not** drop support for IE11.
Other community contributions came from [**@Devjeel**](https://togithub.com/Devjeel), [**@Harsha509**](https://togithub.com/Harsha509) and [**@sharath2106**](https://togithub.com/sharath2106). *Thank you* to everyone who contributed to this release!
> Do you read Korean? See [this guide to running parallel tests in Mocha](https://blog.outsider.ne.kr/1489), translated by our maintainer, [**@outsideris**](https://togithub.com/outsideris).
#### :tada: Enhancements
- [#4287](https://togithub.com/mochajs/mocha/issues/4287): Use background colors with inline diffs for better visual distinction ([**@michael-brade**](https://togithub.com/michael-brade))
#### :bug: Fixes
- [#4328](https://togithub.com/mochajs/mocha/issues/4328): Fix "watch" mode when Mocha run in parallel ([**@boneskull**](https://togithub.com/boneskull))
- [#4382](https://togithub.com/mochajs/mocha/issues/4382): Fix root hook execution in "watch" mode ([**@indieisaconcept**](https://togithub.com/indieisaconcept))
- [#4383](https://togithub.com/mochajs/mocha/issues/4383): Consistent auto-generated hook titles ([**@cspotcode**](https://togithub.com/cspotcode))
- [#4359](https://togithub.com/mochajs/mocha/issues/4359): Better errors when running `mocha init` ([**@boneskull**](https://togithub.com/boneskull))
- [#4341](https://togithub.com/mochajs/mocha/issues/4341): Fix weirdness when using `delay` option in browser ([**@craigtaub**](https://togithub.com/craigtaub))
#### :lock: Security Fixes
- [#4378](https://togithub.com/mochajs/mocha/issues/4378), [#4333](https://togithub.com/mochajs/mocha/issues/4333): Update [javascript-serialize](https://npm.im/javascript-serialize) ([**@martinoppitz**](https://togithub.com/martinoppitz), [**@wnghdcjfe**](https://togithub.com/wnghdcjfe))
- [#4354](https://togithub.com/mochajs/mocha/issues/4354): Update [yargs-unparser](https://npm.im/yargs-unparser) ([**@martinoppitz**](https://togithub.com/martinoppitz))
#### :book: Documentation & Website
- [#4173](https://togithub.com/mochajs/mocha/issues/4173): Document how to use `--enable-source-maps` with Mocha ([**@bcoe**](https://togithub.com/bcoe))
- [#4343](https://togithub.com/mochajs/mocha/issues/4343): Clean up some API docs ([**@craigtaub**](https://togithub.com/craigtaub))
- [#4318](https://togithub.com/mochajs/mocha/issues/4318): Sponsor images are now self-hosted ([**@Munter**](https://togithub.com/Munter))
#### :nut_and_bolt: Other
- [#4293](https://togithub.com/mochajs/mocha/issues/4293): Use Rollup and Babel in build pipeline; add source map to published files ([**@Munter**](https://togithub.com/Munter))
### [`v8.0.1`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#801--2020-06-10)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v8.0.0...v8.0.1)
The obligatory patch after a major.
#### :bug: Fixes
- [#4328](https://togithub.com/mochajs/mocha/issues/4328): Fix `--parallel` when combined with `--watch` ([**@boneskull**](https://togithub.com/boneskull))
### [`v8.0.0`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#800--2020-06-10)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v7.2.0...v8.0.0)
In this major release, Mocha adds the ability to *run tests in parallel*. Better late than never! Please note the **breaking changes** detailed below.
Let's welcome [**@giltayar**](https://togithub.com/giltayar) and [**@nicojs**](https://togithub.com/nicojs) to the maintenance team!
#### :boom: Breaking Changes
- [#4164](https://togithub.com/mochajs/mocha/issues/4164): **Mocha v8.0.0 now requires Node.js v10.12.0 or newer.** Mocha no longer supports the Node.js v8.x line ("Carbon"), which entered End-of-Life at the end of 2019 ([**@UlisesGascon**](https://togithub.com/UlisesGascon))
- [#4175](https://togithub.com/mochajs/mocha/issues/4175): Having been deprecated with a warning since v7.0.0, **`mocha.opts` is no longer supported** ([**@juergba**](https://togithub.com/juergba))
:sparkles: **WORKAROUND:** Replace `mocha.opts` with a [configuration file](https://mochajs.org/#configuring-mocha-nodejs).
- [#4260](https://togithub.com/mochajs/mocha/issues/4260): Remove `enableTimeout()` (`this.enableTimeout()`) from the context object ([**@craigtaub**](https://togithub.com/craigtaub))
:sparkles: **WORKAROUND:** Replace usage of `this.enableTimeout(false)` in your tests with `this.timeout(0)`.
- [#4315](https://togithub.com/mochajs/mocha/issues/4315): The `spec` option no longer supports a comma-delimited list of files ([**@juergba**](https://togithub.com/juergba))
:sparkles: **WORKAROUND**: Use an array instead (e.g., `"spec": "foo.js,bar.js"` becomes `"spec": ["foo.js", "bar.js"]`).
- [#4309](https://togithub.com/mochajs/mocha/issues/4309): Drop support for Node.js v13.x line, which is now End-of-Life ([**@juergba**](https://togithub.com/juergba))
- [#4282](https://togithub.com/mochajs/mocha/issues/4282): `--forbid-only` will throw an error even if exclusive tests are avoided via `--grep` or other means ([**@arvidOtt**](https://togithub.com/arvidOtt))
- [#4223](https://togithub.com/mochajs/mocha/issues/4223): The context object's `skip()` (`this.skip()`) in a "before all" (`before()`) hook will no longer execute subsequent sibling hooks, in addition to hooks in child suites ([**@juergba**](https://togithub.com/juergba))
- [#4178](https://togithub.com/mochajs/mocha/issues/4178): Remove previously soft-deprecated APIs ([**@wnghdcjfe**](https://togithub.com/wnghdcjfe)):
- `Mocha.prototype.ignoreLeaks()`
- `Mocha.prototype.useColors()`
- `Mocha.prototype.useInlineDiffs()`
- `Mocha.prototype.hideDiff()`
#### :tada: Enhancements
- [#4245](https://togithub.com/mochajs/mocha/issues/4245): Add ability to run tests in parallel for Node.js (see [docs](https://mochajs.org/#parallel-tests)) ([**@boneskull**](https://togithub.com/boneskull))
:exclamation: See also [#4244](https://togithub.com/mochajs/mocha/issues/4244); [Root Hook Plugins (docs)](https://mochajs.org/#root-hook-plugins) -- *root hooks must be defined via Root Hook Plugins to work in parallel mode*
- [#4304](https://togithub.com/mochajs/mocha/issues/4304): `--require` now works with ES modules ([**@JacobLey**](https://togithub.com/JacobLey))
- [#4299](https://togithub.com/mochajs/mocha/issues/4299): In some circumstances, Mocha can run ES modules under Node.js v10 -- *use at your own risk!* ([**@giltayar**](https://togithub.com/giltayar))
#### :book: Documentation
- [#4246](https://togithub.com/mochajs/mocha/issues/4246): Add documentation for parallel mode and Root Hook plugins ([**@boneskull**](https://togithub.com/boneskull))
#### :nut_and_bolt: Other
- [#4200](https://togithub.com/mochajs/mocha/issues/4200): Drop mkdirp and replace it with fs.mkdirSync ([**@HyunSangHan**](https://togithub.com/HyunSangHan))
#### :bug: Fixes
(All bug fixes in Mocha v8.0.0 are also breaking changes, and are listed above)
### [`v7.2.0`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#720--2020-05-22)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v7.1.2...v7.2.0)
#### :tada: Enhancements
- [#4234](https://togithub.com/mochajs/mocha/issues/4234): Add ability to run tests in a mocha instance multiple times ([**@nicojs**](https://togithub.com/nicojs))
- [#4219](https://togithub.com/mochajs/mocha/issues/4219): Exposing filename in JSON, doc, and json-stream reporters ([**@Daniel0113**](https://togithub.com/Daniel0113))
- [#4244](https://togithub.com/mochajs/mocha/issues/4244): Add Root Hook Plugins ([**@boneskull**](https://togithub.com/boneskull))
#### :bug: Fixes
- [#4258](https://togithub.com/mochajs/mocha/issues/4258): Fix missing dot in name of configuration file ([**@sonicdoe**](https://togithub.com/sonicdoe))
- [#4194](https://togithub.com/mochajs/mocha/issues/4194): Check if module.paths really exists ([**@ematipico**](https://togithub.com/ematipico))
- [#4256](https://togithub.com/mochajs/mocha/issues/4256): `--forbid-only` does not recognize `it.only` when `before` crashes ([**@arvidOtt**](https://togithub.com/arvidOtt))
- [#4152](https://togithub.com/mochajs/mocha/issues/4152): Bug with multiple async done() calls ([**@boneskull**](https://togithub.com/boneskull))
- [#4275](https://togithub.com/mochajs/mocha/issues/4275): Improper warnings for invalid reporters ([**@boneskull**](https://togithub.com/boneskull))
- [#4288](https://togithub.com/mochajs/mocha/issues/4288): Broken hook.spec.js test for IE11 ([**@boneskull**](https://togithub.com/boneskull))
#### :book: Documentation
- [#4081](https://togithub.com/mochajs/mocha/issues/4081): Insufficient white space for API docs in view on mobile ([**@HyunSangHan**](https://togithub.com/HyunSangHan))
- [#4255](https://togithub.com/mochajs/mocha/issues/4255): Update mocha-docdash for UI fixes on API docs ([**@craigtaub**](https://togithub.com/craigtaub))
- [#4235](https://togithub.com/mochajs/mocha/issues/4235): Enable emoji on website; enable normal ul elements ([**@boneskull**](https://togithub.com/boneskull))
- [#4272](https://togithub.com/mochajs/mocha/issues/4272): Fetch sponsors at build time, show ALL non-skeevy sponsors ([**@boneskull**](https://togithub.com/boneskull))
#### :nut_and_bolt: Other
- [#4249](https://togithub.com/mochajs/mocha/issues/4249): Refactoring improving encapsulation ([**@arvidOtt**](https://togithub.com/arvidOtt))
- [#4242](https://togithub.com/mochajs/mocha/issues/4242): CI add job names, add Node.js v14 to matrix ([**@boneskull**](https://togithub.com/boneskull))
- [#4237](https://togithub.com/mochajs/mocha/issues/4237): Refactor validatePlugins to throw coded errors ([**@boneskull**](https://togithub.com/boneskull))
- [#4236](https://togithub.com/mochajs/mocha/issues/4236): Better debug output ([**@boneskull**](https://togithub.com/boneskull))
### [`v7.1.2`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#712--2020-04-26)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v7.1.1...v7.1.2)
#### :nut_and_bolt: Other
- [#4251](https://togithub.com/mochajs/mocha/issues/4251): Prevent karma-mocha from stalling ([**@juergba**](https://togithub.com/juergba))
- [#4222](https://togithub.com/mochajs/mocha/issues/4222): Update dependency mkdirp to v0.5.5 ([**@outsideris**](https://togithub.com/outsideris))
#### :book: Documentation
- [#4208](https://togithub.com/mochajs/mocha/issues/4208): Add Wallaby logo to site ([**@boneskull**](https://togithub.com/boneskull))
### [`v7.1.1`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#711--2020-03-18)
[Compare Source](https://togithub.com/mochajs/mocha/compare/v7.1.0...v7.1.1)
#### :lock: Security Fixes
- [#4204](https://togithub.com/mochajs/mocha/issues/4204): Update dependencies mkdirp, yargs-parser and yargs ([**@juergba**](https://togithub.com/juergba))
#### :bug: Fixes
- [#3660](https://togithub.com/mochajs/mocha/issues/3660): Fix `runner` listening to `start` a
Configuration
📅 Schedule: "before 3am on Monday" (UTC).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
[ ] If you want to rebase/retry this PR, check this box.
This PR contains the following updates:
5.2.6
->8.2.2
10.12.27
->14.17.3
2.0.2
->3.0.0
1.3.1
->6.0.0
^0.5.4
->^1.0.0
6.0.2
->9.0.0
1.16.4
->2.3.1
1.10.0
->3.1.0
2.6.3
->3.0.2
6.0.0
->8.0.0
^1.9.3
->^2.0.0
3.3.3333
->4.3.2
^3.2.0
->^4.0.0
^5.2.1
->^7.0.0
^1.0.6
->^3.0.0
Release Notes
typicode/husky
### [`v6.0.0`](https://togithub.com/typicode/husky/releases/v6.0.0) [Compare Source](https://togithub.com/typicode/husky/compare/v5.2.0...v6.0.0) After being in early access for Open Source projects and Sponsors for a limited time, **I'm happy to announce that husky 6 is MIT again** and can be freely used in commercial projects! 🎉 **Many thanks to the [Open Source projects](https://typicode.github.io/husky/#/?id=used-by) and Companies which have switched to/sponsored the new husky during this period!** *OSS is my full-time job, please consider sponsoring the development of husky on [GitHub sponsors](https://togithub.com/sponsors/typicode) or [Open Collective](https://opencollective.com/husky). Thank you!* ### Breaking change - `husky init` has been moved to its own package (`npx husky-init`) ### Added - Programmatically use husky: `require('husky')` - TypeScript definitions ### Migrating from husky 4 Husky 6 contains breaking changes. If you're coming from v4, `npm install husky@6` won't be enough. **Recommended:** see [husky-4-to-6](https://typicode.github.io/husky/#/?id=husky-4-to-6-cli) CLI to automatically migrate your config. There's also a dedicated section in the [docs](https://typicode.github.io/husky/#/?id=migrate-from-v4-to-v6). **If you're curious why config has changed, you may be interested in reading:** https://blog.typicode.com/husky-git-hooks-javascript-config/ **Also Husky 6 follows official [npm](https://docs.npmjs.com/cli/v7/using-npm/scripts#best-practices) and [Yarn](https://yarnpkg.com/advanced/lifecycle-scripts#a-note-about-postinstall) best practices regarding autoinstall.** It's recommended to use `prepare` script instead (see [usage](https://typicode.github.io/husky/#/?id=usage) in docs). ### [`v5.2.0`](https://togithub.com/typicode/husky/releases/v5.2.0) [Compare Source](https://togithub.com/typicode/husky/compare/v5.1.3...v5.2.0) - Add `set` command to replace hooks (`husky set .husky/pre-commit cmd`) - Update `add` command to append command (`husky add .husky/pre-commit cmd`) - Improve error messages ### [`v5.1.3`](https://togithub.com/typicode/husky/releases/v5.1.3) [Compare Source](https://togithub.com/typicode/husky/compare/v5.1.2...v5.1.3) - docs: add specific Yarn v2 install/uninstall instructions - cli: `husky init` will detect Yarn v2 and initialize accordingly ### [`v5.1.2`](https://togithub.com/typicode/husky/releases/v5.1.2) [Compare Source](https://togithub.com/typicode/husky/compare/v5.1.1...v5.1.2) - docs: recommend `prepare` script instead of `postinstall` ([#890](https://togithub.com/typicode/husky/issues/890)) - cli: `husky init` use `prepare` script ([#890](https://togithub.com/typicode/husky/issues/890)) ### [`v5.1.1`](https://togithub.com/typicode/husky/releases/v5.1.1) [Compare Source](https://togithub.com/typicode/husky/compare/v5.1.0...v5.1.1) - style(shell): add trailing newlines ([#870](https://togithub.com/typicode/husky/issues/870)) - fix(init): update package.json postinstall ### [`v5.1.0`](https://togithub.com/typicode/husky/releases/v5.1.0) [Compare Source](https://togithub.com/typicode/husky/compare/v5.0.9...v5.1.0) - Add `husky init` ### [`v5.0.9`](https://togithub.com/typicode/husky/releases/v5.0.9) [Compare Source](https://togithub.com/typicode/husky/compare/v5.0.8...v5.0.9) - fix(install): do not fail if not inside a Git directory (closes [#851](https://togithub.com/typicode/husky/issues/851)) See https://github.com/typicode/husky/releases/tag/v5.0.0 for v5 release notes ### [`v5.0.8`](https://togithub.com/typicode/husky/releases/v5.0.8) [Compare Source](https://togithub.com/typicode/husky/compare/v5.0.7...v5.0.8) - fix(install): better handle Git <2.9 ([#846](https://togithub.com/typicode/husky/issues/846)) closes [#844](https://togithub.com/typicode/husky/issues/844) ### [`v5.0.7`](https://togithub.com/typicode/husky/releases/v5.0.7) [Compare Source](https://togithub.com/typicode/husky/compare/v5.0.6...v5.0.7) - fix(shell): double quote params ([#824](https://togithub.com/typicode/husky/issues/824)) ### [`v5.0.6`](https://togithub.com/typicode/husky/releases/v5.0.6) [Compare Source](https://togithub.com/typicode/husky/compare/v5.0.5...v5.0.6) - Remove unused files ### [`v5.0.5`](https://togithub.com/typicode/husky/releases/v5.0.5) [Compare Source](https://togithub.com/typicode/husky/compare/v5.0.4...v5.0.5) - Fix custom directory support [#827](https://togithub.com/typicode/husky/issues/827) ### [`v5.0.4`](https://togithub.com/typicode/husky/compare/v5.0.3...v5.0.4) [Compare Source](https://togithub.com/typicode/husky/compare/v5.0.3...v5.0.4) ### [`v5.0.3`](https://togithub.com/typicode/husky/compare/v5.0.2...v5.0.3) [Compare Source](https://togithub.com/typicode/husky/compare/v5.0.2...v5.0.3) ### [`v5.0.2`](https://togithub.com/typicode/husky/compare/v5.0.1...v5.0.2) [Compare Source](https://togithub.com/typicode/husky/compare/v5.0.1...v5.0.2) ### [`v5.0.1`](https://togithub.com/typicode/husky/compare/v5.0.0...v5.0.1) [Compare Source](https://togithub.com/typicode/husky/compare/v5.0.0...v5.0.1) ### [`v5.0.0`](https://togithub.com/typicode/husky/releases/v5.0.0) [Compare Source](https://togithub.com/typicode/husky/compare/v4.3.8...v5.0.0) 👉 See https://typicode.github.io/husky for breaking changes and new installation instructions. #### Note about the license Husky 5 is released under The Parity Public License. It doesn't affect you if you're using husky in an Open Source project or if you're a sponsor. You're free to use it as usual and I hope you'll enjoy this new release ❤️ If you're using husky in a commercial project, you may want to consider becoming a sponsor to support the project. You can also try it for 30 days. **This is only for a limited time, husky will be MIT again later.** #### Migrating **Important** Husky v5 brings a lot of improvements but is also very different from v4. Git hooks won't work if you only upgrade husky dependency, existing config needs to be migrated too. The best way to switch to v5 is to follow the new installation instructions and migrate existing hooks command using `husky add`. ### [`v4.3.8`](https://togithub.com/typicode/husky/releases/v4.3.8) [Compare Source](https://togithub.com/typicode/husky/compare/v4.3.7...v4.3.8) - Fix `Cannot read property 'toString' of null` - Improve error messages ### [`v4.3.7`](https://togithub.com/typicode/husky/releases/v4.3.7) [Compare Source](https://togithub.com/typicode/husky/compare/v4.3.6...v4.3.7) - Fix: upgrade find-versions to 4.0.0 https://github.com/typicode/husky/pull/837 ### [`v4.3.6`](https://togithub.com/typicode/husky/releases/v4.3.6) [Compare Source](https://togithub.com/typicode/husky/compare/v4.3.5...v4.3.6) - Fix `prepare-commit-msg` on windows [#737](https://togithub.com/typicode/husky/issues/737) ### [`v4.3.5`](https://togithub.com/typicode/husky/releases/v4.3.5) [Compare Source](https://togithub.com/typicode/husky/compare/v4.3.4...v4.3.5) - Rollback and do not throw error if husky install fails ### [`v4.3.4`](https://togithub.com/typicode/husky/releases/v4.3.4) [Compare Source](https://togithub.com/typicode/husky/compare/v4.3.3...v4.3.4) - Throw error if husky install fails - Add workaround for npm 7 currently missing `INIT_CWD` environment variable ### [`v4.3.3`](https://togithub.com/typicode/husky/compare/v4.3.2...v4.3.3) [Compare Source](https://togithub.com/typicode/husky/compare/v4.3.2...v4.3.3) ### [`v4.3.2`](https://togithub.com/typicode/husky/compare/v4.3.1...v4.3.2) [Compare Source](https://togithub.com/typicode/husky/compare/v4.3.1...v4.3.2) ### [`v4.3.1`](https://togithub.com/typicode/husky/compare/v4.3.0...v4.3.1) [Compare Source](https://togithub.com/typicode/husky/compare/v4.3.0...v4.3.1) ### [`v4.3.0`](https://togithub.com/typicode/husky/releases/v4.3.0) [Compare Source](https://togithub.com/typicode/husky/compare/v4.2.5...v4.3.0) - Add `.cjs` config file support [#754](https://togithub.com/typicode/husky/issues/754) ### [`v4.2.5`](https://togithub.com/typicode/husky/releases/v4.2.5) [Compare Source](https://togithub.com/typicode/husky/compare/v4.2.4...v4.2.5) - Fix wrong error message [#709](https://togithub.com/typicode/husky/issues/709) - Update dependencies [#710](https://togithub.com/typicode/husky/issues/710) ### [`v4.2.4`](https://togithub.com/typicode/husky/releases/v4.2.4) [Compare Source](https://togithub.com/typicode/husky/compare/v4.2.3...v4.2.4) - When Node version is unsupported, log actual version in addition to the error message [#701](https://togithub.com/typicode/husky/issues/701) - Fix: support `cnpm` package manager [#687](https://togithub.com/typicode/husky/issues/687) - Fix: always use `sh` to run scripts and avoid inconsistencies [#707](https://togithub.com/typicode/husky/issues/707) - Fix: don't throw error if files are already removed during uninstall [#708](https://togithub.com/typicode/husky/issues/708) ### [`v4.2.3`](https://togithub.com/typicode/husky/releases/v4.2.3) [Compare Source](https://togithub.com/typicode/husky/compare/v4.2.2...v4.2.3) - Fix: check for `husky.config.js` not `.huskyrc.config.js` [#669](https://togithub.com/typicode/husky/issues/669) ### [`v4.2.2`](https://togithub.com/typicode/husky/releases/v4.2.2) [Compare Source](https://togithub.com/typicode/husky/compare/v4.2.1...v4.2.2) - Fix [#662](https://togithub.com/typicode/husky/issues/662) disable fast-skip heuristic for `.husky.js` and `.husky.config.js` - Fix do not install `update`, `pre/post-receive` hooks ### [`v4.2.1`](https://togithub.com/typicode/husky/releases/v4.2.1) [Compare Source](https://togithub.com/typicode/husky/compare/v4.2.0...v4.2.1) - Fix: support spaces in path to husky.local.sh [#658](https://togithub.com/typicode/husky/issues/658) ### [`v4.2.0`](https://togithub.com/typicode/husky/releases/v4.2.0) [Compare Source](https://togithub.com/typicode/husky/compare/v4.1.0...v4.2.0) - Check Git version during install and log an error if it's `<2.13.0` ### [`v4.1.0`](https://togithub.com/typicode/husky/releases/v4.1.0) [Compare Source](https://togithub.com/typicode/husky/compare/v4.0.10...v4.1.0) - Improve speed and refactor hooks ### [`v4.0.10`](https://togithub.com/typicode/husky/compare/v4.0.9...v4.0.10) [Compare Source](https://togithub.com/typicode/husky/compare/v4.0.9...v4.0.10) ### [`v4.0.9`](https://togithub.com/typicode/husky/releases/v4.0.9) [Compare Source](https://togithub.com/typicode/husky/compare/v4.0.8...v4.0.9) - Fix: read stdin from hook script ([#645](https://togithub.com/typicode/husky/issues/645)) ### [`v4.0.8`](https://togithub.com/typicode/husky/compare/v4.0.7...v4.0.8) [Compare Source](https://togithub.com/typicode/husky/compare/v4.0.7...v4.0.8) ### [`v4.0.7`](https://togithub.com/typicode/husky/releases/v4.0.7) [Compare Source](https://togithub.com/typicode/husky/compare/v4.0.6...v4.0.7) - Fix: Yarn when running inside `winpty` ([#634](https://togithub.com/typicode/husky/issues/634)) ### [`v4.0.6`](https://togithub.com/typicode/husky/releases/v4.0.6) [Compare Source](https://togithub.com/typicode/husky/compare/v4.0.5...v4.0.6) - Revert change in v4.0.5 ### [`v4.0.5`](https://togithub.com/typicode/husky/releases/v4.0.5) [Compare Source](https://togithub.com/typicode/husky/compare/v4.0.4...v4.0.5) - Fix: use process.exit if install fails [#633](https://togithub.com/typicode/husky/issues/633) ### [`v4.0.4`](https://togithub.com/typicode/husky/releases/v4.0.4) [Compare Source](https://togithub.com/typicode/husky/compare/v4.0.3...v4.0.4) - Fix: npm ignore `.eslintrc.js` ([#627](https://togithub.com/typicode/husky/issues/627)) ### [`v4.0.3`](https://togithub.com/typicode/husky/releases/v4.0.3) [Compare Source](https://togithub.com/typicode/husky/compare/v4.0.2...v4.0.3) - Fix: error message if trying to install in a non-git repo ([#627](https://togithub.com/typicode/husky/issues/627)) ### [`v4.0.2`](https://togithub.com/typicode/husky/releases/v4.0.2) [Compare Source](https://togithub.com/typicode/husky/compare/v4.0.1...v4.0.2) - Fix: show error message when hook fails ### [`v4.0.1`](https://togithub.com/typicode/husky/releases/v4.0.1) [Compare Source](https://togithub.com/typicode/husky/compare/v4.0.0...v4.0.1) - Fix: make Yarn silent. When Husky was installed with Yarn 1.21.1, hooks output was too verbose ([#626](https://togithub.com/typicode/husky/issues/626)). ### [`v4.0.0`](https://togithub.com/typicode/husky/releases/v4.0.0) [Compare Source](https://togithub.com/typicode/husky/compare/v3.1.0...v4.0.0) - Support `Yarn v2` new Plug'n'Play feature (thanks to [@arcanis](https://togithub.com/arcanis)) - Improve path handling on Windows (in particular with `Cygwin` and `Cmdr`) - Remove `dependencies` and simplify code - **Breaking** requires `Node 10+` **Thanks to all contributors and everyone who is supporting Husky on [Open Collective](https://opencollective.com/husky), [GitHub sponsors](https://togithub.com/sponsors/typicode) and [Patreon](https://www.patreon.com/typicode)!** ### [`v3.1.0`](https://togithub.com/typicode/husky/releases/v3.1.0) [Compare Source](https://togithub.com/typicode/husky/compare/v3.0.9...v3.1.0) - Add `pre-merge-commit` hook ([#605](https://togithub.com/typicode/husky/issues/605)) ### [`v3.0.9`](https://togithub.com/typicode/husky/releases/v3.0.9) [Compare Source](https://togithub.com/typicode/husky/compare/v3.0.8...v3.0.9) - Reduce dependencies: replace `is-ci` with `ci-info` [#579](https://togithub.com/typicode/husky/issues/579) ### [`v3.0.8`](https://togithub.com/typicode/husky/releases/v3.0.8) [Compare Source](https://togithub.com/typicode/husky/compare/v3.0.7...v3.0.8) - Fix: git worktree support [#580](https://togithub.com/typicode/husky/issues/580) - Debug: check `GIT_DIR` environment variable when hooks are run ### [`v3.0.7`](https://togithub.com/typicode/husky/releases/v3.0.7) [Compare Source](https://togithub.com/typicode/husky/compare/v3.0.6...v3.0.7) Debug: display husky version and created at ### [`v3.0.6`](https://togithub.com/typicode/husky/releases/v3.0.6) [Compare Source](https://togithub.com/typicode/husky/compare/v3.0.5...v3.0.6) Debug: improve messages ### [`v3.0.5`](https://togithub.com/typicode/husky/releases/v3.0.5) [Compare Source](https://togithub.com/typicode/husky/compare/v3.0.4...v3.0.5) Fix: prevent `postinstall` from failing on windows https://github.com/typicode/husky/pull/573 ### [`v3.0.4`](https://togithub.com/typicode/husky/releases/v3.0.4) [Compare Source](https://togithub.com/typicode/husky/compare/v3.0.3...v3.0.4) Fix: skip install earlier when `HUSKY_SKIP_INSTALL=1` (https://github.com/typicode/husky/issues/563) ### [`v3.0.3`](https://togithub.com/typicode/husky/releases/v3.0.3) [Compare Source](https://togithub.com/typicode/husky/compare/v3.0.2...v3.0.3) Fix: prevent old hooks (husky `< 1.0`) to be run if new ones are defined (husky `>= 1.0` ) https://github.com/typicode/husky/issues/556 ### [`v3.0.2`](https://togithub.com/typicode/husky/releases/v3.0.2) [Compare Source](https://togithub.com/typicode/husky/compare/v3.0.1...v3.0.2) - Fix: add shebang to run.js ([#528](https://togithub.com/typicode/husky/issues/528)) ### [`v3.0.1`](https://togithub.com/typicode/husky/releases/v3.0.1) [Compare Source](https://togithub.com/typicode/husky/compare/v3.0.0...v3.0.1) - Improve error message if git command fails ### [`v3.0.0`](https://togithub.com/typicode/husky/releases/v3.0.0) [Compare Source](https://togithub.com/typicode/husky/compare/df97af21254ca033a05346df3deb61c046b9ea12...v3.0.0) - Fix HUSKY_SKIP_INSTALL=1 not skipping install - **Breaking change** husky requires now Git `>= 2.13.2`. If you're already using husky `v2` and don't use an old version of Git, you can safely upgrade. ### [`v2.7.0`](https://togithub.com/typicode/husky/compare/v2.6.0...df97af21254ca033a05346df3deb61c046b9ea12) [Compare Source](https://togithub.com/typicode/husky/compare/v2.6.0...df97af21254ca033a05346df3deb61c046b9ea12) ### [`v2.6.0`](https://togithub.com/typicode/husky/compare/v2.5.0...v2.6.0) [Compare Source](https://togithub.com/typicode/husky/compare/v2.5.0...v2.6.0) ### [`v2.5.0`](https://togithub.com/typicode/husky/compare/v2.4.1...v2.5.0) [Compare Source](https://togithub.com/typicode/husky/compare/v2.4.1...v2.5.0) ### [`v2.4.1`](https://togithub.com/typicode/husky/compare/v2.4.0...v2.4.1) [Compare Source](https://togithub.com/typicode/husky/compare/v2.4.0...v2.4.1) ### [`v2.4.0`](https://togithub.com/typicode/husky/compare/v2.3.0...v2.4.0) [Compare Source](https://togithub.com/typicode/husky/compare/v2.3.0...v2.4.0) ### [`v2.3.0`](https://togithub.com/typicode/husky/compare/v2.2.0...v2.3.0) [Compare Source](https://togithub.com/typicode/husky/compare/v2.2.0...v2.3.0) ### [`v2.2.0`](https://togithub.com/typicode/husky/compare/v2.1.0...v2.2.0) [Compare Source](https://togithub.com/typicode/husky/compare/v2.1.0...v2.2.0) ### [`v2.1.0`](https://togithub.com/typicode/husky/compare/v2.0.0...v2.1.0) [Compare Source](https://togithub.com/typicode/husky/compare/v2.0.0...v2.1.0) ### [`v2.0.0`](https://togithub.com/typicode/husky/compare/v1.3.1...v2.0.0) [Compare Source](https://togithub.com/typicode/husky/compare/v1.3.1...v2.0.0)dankogai/js-combinatorics
### [`v1.4.5`](https://togithub.com/dankogai/js-combinatorics/compare/1.4.4...1.4.5) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.4.4...1.4.5) ### [`v1.4.4`](https://togithub.com/dankogai/js-combinatorics/compare/1.4.3...1.4.4) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.4.3...1.4.4) ### [`v1.4.3`](https://togithub.com/dankogai/js-combinatorics/compare/1.4.2...1.4.3) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.4.2...1.4.3) ### [`v1.4.2`](https://togithub.com/dankogai/js-combinatorics/compare/1.4.1...1.4.2) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.4.1...1.4.2) ### [`v1.4.1`](https://togithub.com/dankogai/js-combinatorics/compare/1.4.0...1.4.1) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.4.0...1.4.1) ### [`v1.4.0`](https://togithub.com/dankogai/js-combinatorics/compare/1.3.0...1.4.0) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.3.0...1.4.0) ### [`v1.3.0`](https://togithub.com/dankogai/js-combinatorics/compare/1.2.3...1.3.0) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.2.3...1.3.0) ### [`v1.2.3`](https://togithub.com/dankogai/js-combinatorics/compare/1.2.2...1.2.3) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.2.2...1.2.3) ### [`v1.2.2`](https://togithub.com/dankogai/js-combinatorics/compare/1.2.1...1.2.2) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.2.1...1.2.2) ### [`v1.2.1`](https://togithub.com/dankogai/js-combinatorics/compare/1.2.0...1.2.1) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.2.0...1.2.1) ### [`v1.2.0`](https://togithub.com/dankogai/js-combinatorics/compare/1.1.1...1.2.0) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.1.1...1.2.0) ### [`v1.1.1`](https://togithub.com/dankogai/js-combinatorics/compare/1.1.0...1.1.1) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.1.0...1.1.1) ### [`v1.1.0`](https://togithub.com/dankogai/js-combinatorics/compare/1.0.0...1.1.0) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/1.0.0...1.1.0) ### [`v1.0.0`](https://togithub.com/dankogai/js-combinatorics/compare/0.6.1...1.0.0) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/0.6.1...1.0.0) ### [`v0.6.1`](https://togithub.com/dankogai/js-combinatorics/compare/0.6.0...0.6.1) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/0.6.0...0.6.1) ### [`v0.6.0`](https://togithub.com/dankogai/js-combinatorics/compare/0.5.5...0.6.0) [Compare Source](https://togithub.com/dankogai/js-combinatorics/compare/0.5.5...0.6.0)mochajs/mocha
### [`v9.0.0`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#900--2021-06-07) [Compare Source](https://togithub.com/mochajs/mocha/compare/v8.4.0...v9.0.0) #### :boom: Breaking Changes - [#4633](https://togithub.com/mochajs/mocha/issues/4633): **Drop Node.js v10.x support** ([**@juergba**](https://togithub.com/juergba)) - [#4635](https://togithub.com/mochajs/mocha/issues/4635): `import`-first loading of test files ([**@giltayar**](https://togithub.com/giltayar)) **Mocha is going ESM-first!** This means that it will now use ESM `import(test_file)` to load the test files, instead of the CommonJS `require(test_file)`. This is not a problem, as `import` can also load most files that `require` does. In the rare cases where this fails, it will fallback to `require(...)`. This ESM-first approach is the next step in Mocha's ESM migration, and allows ESM loaders to load and transform the test file. - [#4636](https://togithub.com/mochajs/mocha/issues/4636): Remove deprecated `utils.lookupFiles()` ([**@juergba**](https://togithub.com/juergba)) - [#4638](https://togithub.com/mochajs/mocha/issues/4638): Limit the size of `actual`/`expected` for `diff` generation ([**@juergba**](https://togithub.com/juergba)) - [#4389](https://togithub.com/mochajs/mocha/issues/4389): Refactoring: Consuming log-symbols alternate to code for win32 in reporters/base ([**@MoonSupport**](https://togithub.com/MoonSupport)) #### :tada: Enhancements - [#4640](https://togithub.com/mochajs/mocha/issues/4640): Add new option `--dry-run` ([**@juergba**](https://togithub.com/juergba)) #### :bug: Fixes - [#4128](https://togithub.com/mochajs/mocha/issues/4128): Fix: control stringification of error message ([**@syeutyu**](https://togithub.com/syeutyu)) #### :nut_and_bolt: Other - [#4646](https://togithub.com/mochajs/mocha/issues/4646): Deprecate `Runner(suite: Suite, delay: boolean)` signature ([**@juergba**](https://togithub.com/juergba)) - [#4643](https://togithub.com/mochajs/mocha/issues/4643): Update production dependencies ([**@juergba**](https://togithub.com/juergba)) ### [`v8.4.0`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#840--2021-05-07) [Compare Source](https://togithub.com/mochajs/mocha/compare/v8.3.2...v8.4.0) #### :tada: Enhancements - [#4502](https://togithub.com/mochajs/mocha/issues/4502): CLI file parsing errors now have error codes ([**@evaline-ju**](https://togithub.com/evaline-ju)) #### :bug: Fixes - [#4614](https://togithub.com/mochajs/mocha/issues/4614): Watch: fix crash when reloading files ([**@outsideris**](https://togithub.com/outsideris)) #### :book: Documentation - [#4630](https://togithub.com/mochajs/mocha/issues/4630): Add `options.require` to Mocha constructor for `root hook` plugins on parallel runs ([**@juergba**](https://togithub.com/juergba)) - [#4617](https://togithub.com/mochajs/mocha/issues/4617): Dynamically generating tests with `top-level await` and ESM test files ([**@juergba**](https://togithub.com/juergba)) - [#4608](https://togithub.com/mochajs/mocha/issues/4608): Update default file extensions ([**@outsideris**](https://togithub.com/outsideris)) Also thanks to [**@outsideris**](https://togithub.com/outsideris) for various improvements on our GH actions workflows. ### [`v8.3.2`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#832--2021-03-12) [Compare Source](https://togithub.com/mochajs/mocha/compare/v8.3.1...v8.3.2) #### :bug: Fixes - [#4599](https://togithub.com/mochajs/mocha/issues/4599): Fix regression in `require` interface ([**@alexander-fenster**](https://togithub.com/alexander-fenster)) #### :book: Documentation - [#4601](https://togithub.com/mochajs/mocha/issues/4601): Add build to GH actions run ([**@christian-bromann**](https://togithub.com/christian-bromann)) - [#4596](https://togithub.com/mochajs/mocha/issues/4596): Filter active sponsors/backers ([**@juergba**](https://togithub.com/juergba)) - [#4225](https://togithub.com/mochajs/mocha/issues/4225): Update config file examples ([**@pkuczynski**](https://togithub.com/pkuczynski)) ### [`v8.3.1`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#831--2021-03-06) [Compare Source](https://togithub.com/mochajs/mocha/compare/v8.3.0...v8.3.1) #### :bug: Fixes - [#4577](https://togithub.com/mochajs/mocha/issues/4577): Browser: fix `EvalError` caused by regenerator-runtime ([**@snoack**](https://togithub.com/snoack)) - [#4574](https://togithub.com/mochajs/mocha/issues/4574): ESM: allow `import` from mocha in parallel mode ([**@nicojs**](https://togithub.com/nicojs)) ### [`v8.3.0`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#830--2021-02-11) [Compare Source](https://togithub.com/mochajs/mocha/compare/v8.2.1...v8.3.0) #### :tada: Enhancements - [#4506](https://togithub.com/mochajs/mocha/issues/4506): Add error code for test timeout errors ([**@boneskull**](https://togithub.com/boneskull)) - [#4112](https://togithub.com/mochajs/mocha/issues/4112): Add BigInt support to stringify util function ([**@JosejeSinohui**](https://togithub.com/JosejeSinohui)) #### :bug: Fixes - [#4557](https://togithub.com/mochajs/mocha/issues/4557): Add file location when SyntaxError happens in ESM ([**@giltayar**](https://togithub.com/giltayar)) - [#4521](https://togithub.com/mochajs/mocha/issues/4521): Fix `require` error when bundling Mocha with Webpack ([**@devhazem**](https://togithub.com/devhazem)) #### :book: Documentation - [#4507](https://togithub.com/mochajs/mocha/issues/4507): Add support for typescript-style docstrings ([**@boneskull**](https://togithub.com/boneskull)) - [#4503](https://togithub.com/mochajs/mocha/issues/4503): Add GH Actions workflow status badge ([**@outsideris**](https://togithub.com/outsideris)) - [#4494](https://togithub.com/mochajs/mocha/issues/4494): Add example of generating tests dynamically with a closure ([**@maxwellgerber**](https://togithub.com/maxwellgerber)) #### :nut_and_bolt: Other - [#4556](https://togithub.com/mochajs/mocha/issues/4556): Upgrade all dependencies to latest stable ([**@AviVahl**](https://togithub.com/AviVahl)) - [#4543](https://togithub.com/mochajs/mocha/issues/4543): Update dependencies yargs and yargs-parser ([**@juergba**](https://togithub.com/juergba)) Also thanks to [**@outsideris**](https://togithub.com/outsideris) and [**@HyunSangHan**](https://togithub.com/HyunSangHan) for various fixes to our website and documentation. ### [`v8.2.1`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#821--2020-11-02) [Compare Source](https://togithub.com/mochajs/mocha/compare/v8.2.0...v8.2.1) Fixed stuff. #### :bug: Fixes - [#4489](https://togithub.com/mochajs/mocha/issues/4489): Fix problematic handling of otherwise-unhandled `Promise` rejections and erroneous "`done()` called twice" errors ([**@boneskull**](https://togithub.com/boneskull)) - [#4496](https://togithub.com/mochajs/mocha/issues/4496): Avoid `MaxListenersExceededWarning` in watch mode ([**@boneskull**](https://togithub.com/boneskull)) Also thanks to [**@akeating**](https://togithub.com/akeating) for a documentation fix! ### [`v8.2.0`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#820--2020-10-16) [Compare Source](https://togithub.com/mochajs/mocha/compare/v8.1.3...v8.2.0) The major feature added in v8.2.0 is addition of support for [*global fixtures*](https://mochajs.org/#global-fixtures). While Mocha has always had the ability to run setup and teardown via a hook (e.g., a `before()` at the top level of a test file) when running tests in serial, Mocha v8.0.0 added support for parallel runs. Parallel runs are *incompatible* with this strategy; e.g., a top-level `before()` would only run for the file in which it was defined. With [global fixtures](https://mochajs.org/#global-fixtures), Mocha can now perform user-defined setup and teardown *regardless* of mode, and these fixtures are guaranteed to run *once and only once*. This holds for parallel mode, serial mode, and even "watch" mode (the teardown will run once you hit Ctrl-C, just before Mocha finally exits). Tasks such as starting and stopping servers are well-suited to global fixtures, but not sharing resources--global fixtures do *not* share context with your test files (but they do share context with each other). Here's a short example of usage: ```js // fixtures.js // can be async or not exports.mochaGlobalSetup = async function() { this.server = await startSomeServer({port: process.env.TEST_PORT}); console.log(`server running on port ${this.server.port}`); }; exports.mochaGlobalTeardown = async function() { // the context (`this`) is shared, but not with the test files await this.server.stop(); console.log(`server on port ${this.server.port} stopped`); }; // this file can contain root hook plugins as well! // exports.mochaHooks = { ... } ``` Fixtures are loaded with `--require`, e.g., `mocha --require fixtures.js`. For detailed information, please see the [documentation](https://mochajs.org/#global-fixtures) and this handy-dandy [flowchart](https://mochajs.org/#test-fixture-decision-tree-wizard-thing) to help understand the differences between hooks, root hook plugins, and global fixtures (and when you should use each). #### :tada: Enhancements - [#4308](https://togithub.com/mochajs/mocha/issues/4308): Support run-once [global setup & teardown fixtures](https://mochajs.org/#global-fixtures) ([**@boneskull**](https://togithub.com/boneskull)) - [#4442](https://togithub.com/mochajs/mocha/issues/4442): Multi-part extensions (e.g., `test.js`) now usable with `--extension` option ([**@jordanstephens**](https://togithub.com/jordanstephens)) - [#4472](https://togithub.com/mochajs/mocha/issues/4472): Leading dots (e.g., `.js`, `.test.js`) now usable with `--extension` option ([**@boneskull**](https://togithub.com/boneskull)) - [#4434](https://togithub.com/mochajs/mocha/issues/4434): Output of `json` reporter now contains `speed` ("fast"/"medium"/"slow") property ([**@wwhurin**](https://togithub.com/wwhurin)) - [#4464](https://togithub.com/mochajs/mocha/issues/4464): Errors thrown by serializer in parallel mode now have error codes ([**@evaline-ju**](https://togithub.com/evaline-ju)) *For implementors of custom reporters:* - [#4409](https://togithub.com/mochajs/mocha/issues/4409): Parallel mode and custom reporter improvements ([**@boneskull**](https://togithub.com/boneskull)): - Support custom worker-process-only reporters (`Runner.prototype.workerReporter()`); reporters should subclass `ParallelBufferedReporter` in `mocha/lib/nodejs/reporters/parallel-buffered` - Allow opt-in of object reference matching for "sufficiently advanced" custom reporters (`Runner.prototype.linkPartialObjects()`); use if strict object equality is needed when consuming `Runner` event data - Enable detection of parallel mode (`Runner.prototype.isParallelMode()`) #### :bug: Fixes - [#4476](https://togithub.com/mochajs/mocha/issues/4476): Workaround for profoundly bizarre issue affecting `npm` v6.x causing some of Mocha's deps to be installed when `mocha` is present in a package's `devDependencies` and `npm install --production` is run the package's working copy ([**@boneskull**](https://togithub.com/boneskull)) - [#4465](https://togithub.com/mochajs/mocha/issues/4465): Worker processes guaranteed (as opposed to "very likely") to exit before Mocha does; fixes a problem when using `nyc` with Mocha in parallel mode ([**@boneskull**](https://togithub.com/boneskull)) - [#4419](https://togithub.com/mochajs/mocha/issues/4419): Restore `lookupFiles()` in `mocha/lib/utils`, which was broken/missing in Mocha v8.1.0; it now prints a deprecation warning (use `const {lookupFiles} = require('mocha/lib/cli')` instead) ([**@boneskull**](https://togithub.com/boneskull)) Thanks to [**@AviVahl**](https://togithub.com/AviVahl), [**@donghoon-song**](https://togithub.com/donghoon-song), [**@ValeriaVG**](https://togithub.com/ValeriaVG), [**@znarf**](https://togithub.com/znarf), [**@sujin-park**](https://togithub.com/sujin-park), and [**@majecty**](https://togithub.com/majecty) for other helpful contributions! ### [`v8.1.3`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#813--2020-08-28) [Compare Source](https://togithub.com/mochajs/mocha/compare/v8.1.2...v8.1.3) #### :bug: Fixes - [#4425](https://togithub.com/mochajs/mocha/issues/4425): Restore `Mocha.utils.lookupFiles()` and Webpack compatibility (both broken since v8.1.0); `Mocha.utils.lookupFiles()` is now **deprecated** and will be removed in the next major revision of Mocha; use `require('mocha/lib/cli').lookupFiles` instead ([**@boneskull**](https://togithub.com/boneskull)) ### [`v8.1.2`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#812--2020-08-25) [Compare Source](https://togithub.com/mochajs/mocha/compare/v8.1.1...v8.1.2) #### :bug: Fixes - [#4418](https://togithub.com/mochajs/mocha/issues/4418): Fix command-line flag incompatibility in forthcoming Node.js v14.9.0 ([**@boneskull**](https://togithub.com/boneskull)) - [#4401](https://togithub.com/mochajs/mocha/issues/4401): Fix missing global variable in browser ([**@irrationnelle**](https://togithub.com/irrationnelle)) #### :lock: Security Fixes - [#4396](https://togithub.com/mochajs/mocha/issues/4396): Update many dependencies ([**@GChuf**](https://togithub.com/GChuf)) #### :book: Documentation - Various fixes by [**@sujin-park**](https://togithub.com/sujin-park), [**@wwhurin**](https://togithub.com/wwhurin) & [**@Donghoon759**](https://togithub.com/Donghoon759) ### [`v8.1.1`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#811--2020-08-04) [Compare Source](https://togithub.com/mochajs/mocha/compare/v8.1.0...v8.1.1) #### :bug: Fixes - [#4394](https://togithub.com/mochajs/mocha/issues/4394): Fix regression wherein certain reporters did not correctly detect terminal width ([**@boneskull**](https://togithub.com/boneskull)) ### [`v8.1.0`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#810--2020-07-30) [Compare Source](https://togithub.com/mochajs/mocha/compare/v8.0.1...v8.1.0) In this release, Mocha now builds its browser bundle with Rollup and Babel, which will provide the project's codebase more flexibility and consistency. While we've been diligent about backwards compatibility, it's *possible* consumers of the browser bundle will encounter differences (other than an increase in the bundle size). If you *do* encounter an issue with the build, please [report it here](https://togithub.com/mochajs/mocha/issues/new?labels=unconfirmed-bug\&template=bug_report.md\&title=). This release **does not** drop support for IE11. Other community contributions came from [**@Devjeel**](https://togithub.com/Devjeel), [**@Harsha509**](https://togithub.com/Harsha509) and [**@sharath2106**](https://togithub.com/sharath2106). *Thank you* to everyone who contributed to this release! > Do you read Korean? See [this guide to running parallel tests in Mocha](https://blog.outsider.ne.kr/1489), translated by our maintainer, [**@outsideris**](https://togithub.com/outsideris). #### :tada: Enhancements - [#4287](https://togithub.com/mochajs/mocha/issues/4287): Use background colors with inline diffs for better visual distinction ([**@michael-brade**](https://togithub.com/michael-brade)) #### :bug: Fixes - [#4328](https://togithub.com/mochajs/mocha/issues/4328): Fix "watch" mode when Mocha run in parallel ([**@boneskull**](https://togithub.com/boneskull)) - [#4382](https://togithub.com/mochajs/mocha/issues/4382): Fix root hook execution in "watch" mode ([**@indieisaconcept**](https://togithub.com/indieisaconcept)) - [#4383](https://togithub.com/mochajs/mocha/issues/4383): Consistent auto-generated hook titles ([**@cspotcode**](https://togithub.com/cspotcode)) - [#4359](https://togithub.com/mochajs/mocha/issues/4359): Better errors when running `mocha init` ([**@boneskull**](https://togithub.com/boneskull)) - [#4341](https://togithub.com/mochajs/mocha/issues/4341): Fix weirdness when using `delay` option in browser ([**@craigtaub**](https://togithub.com/craigtaub)) #### :lock: Security Fixes - [#4378](https://togithub.com/mochajs/mocha/issues/4378), [#4333](https://togithub.com/mochajs/mocha/issues/4333): Update [javascript-serialize](https://npm.im/javascript-serialize) ([**@martinoppitz**](https://togithub.com/martinoppitz), [**@wnghdcjfe**](https://togithub.com/wnghdcjfe)) - [#4354](https://togithub.com/mochajs/mocha/issues/4354): Update [yargs-unparser](https://npm.im/yargs-unparser) ([**@martinoppitz**](https://togithub.com/martinoppitz)) #### :book: Documentation & Website - [#4173](https://togithub.com/mochajs/mocha/issues/4173): Document how to use `--enable-source-maps` with Mocha ([**@bcoe**](https://togithub.com/bcoe)) - [#4343](https://togithub.com/mochajs/mocha/issues/4343): Clean up some API docs ([**@craigtaub**](https://togithub.com/craigtaub)) - [#4318](https://togithub.com/mochajs/mocha/issues/4318): Sponsor images are now self-hosted ([**@Munter**](https://togithub.com/Munter)) #### :nut_and_bolt: Other - [#4293](https://togithub.com/mochajs/mocha/issues/4293): Use Rollup and Babel in build pipeline; add source map to published files ([**@Munter**](https://togithub.com/Munter)) ### [`v8.0.1`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#801--2020-06-10) [Compare Source](https://togithub.com/mochajs/mocha/compare/v8.0.0...v8.0.1) The obligatory patch after a major. #### :bug: Fixes - [#4328](https://togithub.com/mochajs/mocha/issues/4328): Fix `--parallel` when combined with `--watch` ([**@boneskull**](https://togithub.com/boneskull)) ### [`v8.0.0`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#800--2020-06-10) [Compare Source](https://togithub.com/mochajs/mocha/compare/v7.2.0...v8.0.0) In this major release, Mocha adds the ability to *run tests in parallel*. Better late than never! Please note the **breaking changes** detailed below. Let's welcome [**@giltayar**](https://togithub.com/giltayar) and [**@nicojs**](https://togithub.com/nicojs) to the maintenance team! #### :boom: Breaking Changes - [#4164](https://togithub.com/mochajs/mocha/issues/4164): **Mocha v8.0.0 now requires Node.js v10.12.0 or newer.** Mocha no longer supports the Node.js v8.x line ("Carbon"), which entered End-of-Life at the end of 2019 ([**@UlisesGascon**](https://togithub.com/UlisesGascon)) - [#4175](https://togithub.com/mochajs/mocha/issues/4175): Having been deprecated with a warning since v7.0.0, **`mocha.opts` is no longer supported** ([**@juergba**](https://togithub.com/juergba)) :sparkles: **WORKAROUND:** Replace `mocha.opts` with a [configuration file](https://mochajs.org/#configuring-mocha-nodejs). - [#4260](https://togithub.com/mochajs/mocha/issues/4260): Remove `enableTimeout()` (`this.enableTimeout()`) from the context object ([**@craigtaub**](https://togithub.com/craigtaub)) :sparkles: **WORKAROUND:** Replace usage of `this.enableTimeout(false)` in your tests with `this.timeout(0)`. - [#4315](https://togithub.com/mochajs/mocha/issues/4315): The `spec` option no longer supports a comma-delimited list of files ([**@juergba**](https://togithub.com/juergba)) :sparkles: **WORKAROUND**: Use an array instead (e.g., `"spec": "foo.js,bar.js"` becomes `"spec": ["foo.js", "bar.js"]`). - [#4309](https://togithub.com/mochajs/mocha/issues/4309): Drop support for Node.js v13.x line, which is now End-of-Life ([**@juergba**](https://togithub.com/juergba)) - [#4282](https://togithub.com/mochajs/mocha/issues/4282): `--forbid-only` will throw an error even if exclusive tests are avoided via `--grep` or other means ([**@arvidOtt**](https://togithub.com/arvidOtt)) - [#4223](https://togithub.com/mochajs/mocha/issues/4223): The context object's `skip()` (`this.skip()`) in a "before all" (`before()`) hook will no longer execute subsequent sibling hooks, in addition to hooks in child suites ([**@juergba**](https://togithub.com/juergba)) - [#4178](https://togithub.com/mochajs/mocha/issues/4178): Remove previously soft-deprecated APIs ([**@wnghdcjfe**](https://togithub.com/wnghdcjfe)): - `Mocha.prototype.ignoreLeaks()` - `Mocha.prototype.useColors()` - `Mocha.prototype.useInlineDiffs()` - `Mocha.prototype.hideDiff()` #### :tada: Enhancements - [#4245](https://togithub.com/mochajs/mocha/issues/4245): Add ability to run tests in parallel for Node.js (see [docs](https://mochajs.org/#parallel-tests)) ([**@boneskull**](https://togithub.com/boneskull)) :exclamation: See also [#4244](https://togithub.com/mochajs/mocha/issues/4244); [Root Hook Plugins (docs)](https://mochajs.org/#root-hook-plugins) -- *root hooks must be defined via Root Hook Plugins to work in parallel mode* - [#4304](https://togithub.com/mochajs/mocha/issues/4304): `--require` now works with ES modules ([**@JacobLey**](https://togithub.com/JacobLey)) - [#4299](https://togithub.com/mochajs/mocha/issues/4299): In some circumstances, Mocha can run ES modules under Node.js v10 -- *use at your own risk!* ([**@giltayar**](https://togithub.com/giltayar)) #### :book: Documentation - [#4246](https://togithub.com/mochajs/mocha/issues/4246): Add documentation for parallel mode and Root Hook plugins ([**@boneskull**](https://togithub.com/boneskull)) #### :nut_and_bolt: Other - [#4200](https://togithub.com/mochajs/mocha/issues/4200): Drop mkdirp and replace it with fs.mkdirSync ([**@HyunSangHan**](https://togithub.com/HyunSangHan)) #### :bug: Fixes (All bug fixes in Mocha v8.0.0 are also breaking changes, and are listed above) ### [`v7.2.0`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#720--2020-05-22) [Compare Source](https://togithub.com/mochajs/mocha/compare/v7.1.2...v7.2.0) #### :tada: Enhancements - [#4234](https://togithub.com/mochajs/mocha/issues/4234): Add ability to run tests in a mocha instance multiple times ([**@nicojs**](https://togithub.com/nicojs)) - [#4219](https://togithub.com/mochajs/mocha/issues/4219): Exposing filename in JSON, doc, and json-stream reporters ([**@Daniel0113**](https://togithub.com/Daniel0113)) - [#4244](https://togithub.com/mochajs/mocha/issues/4244): Add Root Hook Plugins ([**@boneskull**](https://togithub.com/boneskull)) #### :bug: Fixes - [#4258](https://togithub.com/mochajs/mocha/issues/4258): Fix missing dot in name of configuration file ([**@sonicdoe**](https://togithub.com/sonicdoe)) - [#4194](https://togithub.com/mochajs/mocha/issues/4194): Check if module.paths really exists ([**@ematipico**](https://togithub.com/ematipico)) - [#4256](https://togithub.com/mochajs/mocha/issues/4256): `--forbid-only` does not recognize `it.only` when `before` crashes ([**@arvidOtt**](https://togithub.com/arvidOtt)) - [#4152](https://togithub.com/mochajs/mocha/issues/4152): Bug with multiple async done() calls ([**@boneskull**](https://togithub.com/boneskull)) - [#4275](https://togithub.com/mochajs/mocha/issues/4275): Improper warnings for invalid reporters ([**@boneskull**](https://togithub.com/boneskull)) - [#4288](https://togithub.com/mochajs/mocha/issues/4288): Broken hook.spec.js test for IE11 ([**@boneskull**](https://togithub.com/boneskull)) #### :book: Documentation - [#4081](https://togithub.com/mochajs/mocha/issues/4081): Insufficient white space for API docs in view on mobile ([**@HyunSangHan**](https://togithub.com/HyunSangHan)) - [#4255](https://togithub.com/mochajs/mocha/issues/4255): Update mocha-docdash for UI fixes on API docs ([**@craigtaub**](https://togithub.com/craigtaub)) - [#4235](https://togithub.com/mochajs/mocha/issues/4235): Enable emoji on website; enable normal ul elements ([**@boneskull**](https://togithub.com/boneskull)) - [#4272](https://togithub.com/mochajs/mocha/issues/4272): Fetch sponsors at build time, show ALL non-skeevy sponsors ([**@boneskull**](https://togithub.com/boneskull)) #### :nut_and_bolt: Other - [#4249](https://togithub.com/mochajs/mocha/issues/4249): Refactoring improving encapsulation ([**@arvidOtt**](https://togithub.com/arvidOtt)) - [#4242](https://togithub.com/mochajs/mocha/issues/4242): CI add job names, add Node.js v14 to matrix ([**@boneskull**](https://togithub.com/boneskull)) - [#4237](https://togithub.com/mochajs/mocha/issues/4237): Refactor validatePlugins to throw coded errors ([**@boneskull**](https://togithub.com/boneskull)) - [#4236](https://togithub.com/mochajs/mocha/issues/4236): Better debug output ([**@boneskull**](https://togithub.com/boneskull)) ### [`v7.1.2`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#712--2020-04-26) [Compare Source](https://togithub.com/mochajs/mocha/compare/v7.1.1...v7.1.2) #### :nut_and_bolt: Other - [#4251](https://togithub.com/mochajs/mocha/issues/4251): Prevent karma-mocha from stalling ([**@juergba**](https://togithub.com/juergba)) - [#4222](https://togithub.com/mochajs/mocha/issues/4222): Update dependency mkdirp to v0.5.5 ([**@outsideris**](https://togithub.com/outsideris)) #### :book: Documentation - [#4208](https://togithub.com/mochajs/mocha/issues/4208): Add Wallaby logo to site ([**@boneskull**](https://togithub.com/boneskull)) ### [`v7.1.1`](https://togithub.com/mochajs/mocha/blob/master/CHANGELOG.md#711--2020-03-18) [Compare Source](https://togithub.com/mochajs/mocha/compare/v7.1.0...v7.1.1) #### :lock: Security Fixes - [#4204](https://togithub.com/mochajs/mocha/issues/4204): Update dependencies mkdirp, yargs-parser and yargs ([**@juergba**](https://togithub.com/juergba)) #### :bug: Fixes - [#3660](https://togithub.com/mochajs/mocha/issues/3660): Fix `runner` listening to `start` aConfiguration
📅 Schedule: "before 3am on Monday" (UTC).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by WhiteSource Renovate. View repository job log here.