mocha 6.1.0 → 6.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/CHANGELOG.md +1776 -1751
  2. package/LICENSE +22 -22
  3. package/README.md +105 -105
  4. package/bin/_mocha +10 -10
  5. package/bin/mocha +149 -149
  6. package/bin/options.js +10 -10
  7. package/browser-entry.js +191 -191
  8. package/index.js +3 -3
  9. package/lib/browser/growl.js +168 -168
  10. package/lib/browser/progress.js +119 -119
  11. package/lib/browser/template.html +18 -18
  12. package/lib/browser/tty.js +13 -13
  13. package/lib/cli/cli.js +69 -69
  14. package/lib/cli/commands.js +13 -13
  15. package/lib/cli/config.js +101 -101
  16. package/lib/cli/index.js +9 -9
  17. package/lib/cli/init.js +37 -37
  18. package/lib/cli/node-flags.js +86 -86
  19. package/lib/cli/one-and-dones.js +70 -70
  20. package/lib/cli/options.js +347 -347
  21. package/lib/cli/run-helpers.js +337 -337
  22. package/lib/cli/run-option-metadata.js +76 -76
  23. package/lib/cli/run.js +297 -297
  24. package/lib/context.js +101 -101
  25. package/lib/errors.js +141 -141
  26. package/lib/growl.js +136 -136
  27. package/lib/hook.js +46 -46
  28. package/lib/interfaces/bdd.js +118 -118
  29. package/lib/interfaces/common.js +191 -191
  30. package/lib/interfaces/exports.js +60 -60
  31. package/lib/interfaces/index.js +6 -6
  32. package/lib/interfaces/qunit.js +99 -99
  33. package/lib/interfaces/tdd.js +107 -107
  34. package/lib/mocha.js +843 -843
  35. package/lib/mocharc.json +10 -10
  36. package/lib/pending.js +12 -12
  37. package/lib/reporters/base.js +491 -491
  38. package/lib/reporters/doc.js +85 -85
  39. package/lib/reporters/dot.js +81 -81
  40. package/lib/reporters/html.js +390 -390
  41. package/lib/reporters/index.js +19 -19
  42. package/lib/reporters/json-stream.js +90 -90
  43. package/lib/reporters/json.js +135 -135
  44. package/lib/reporters/landing.js +108 -108
  45. package/lib/reporters/list.js +78 -78
  46. package/lib/reporters/markdown.js +112 -112
  47. package/lib/reporters/min.js +52 -52
  48. package/lib/reporters/nyan.js +276 -276
  49. package/lib/reporters/progress.js +104 -104
  50. package/lib/reporters/spec.js +99 -99
  51. package/lib/reporters/tap.js +294 -294
  52. package/lib/reporters/xunit.js +216 -216
  53. package/lib/runnable.js +496 -496
  54. package/lib/runner.js +1049 -1049
  55. package/lib/stats-collector.js +83 -83
  56. package/lib/suite.js +642 -642
  57. package/lib/test.js +51 -51
  58. package/lib/utils.js +897 -897
  59. package/mocha.css +326 -326
  60. package/mocha.js +8170 -8476
  61. package/package.json +630 -628
package/CHANGELOG.md CHANGED
@@ -1,1751 +1,1776 @@
1
- # 6.1.0 / 2019-04-07
2
-
3
- ## :lock: Security Fixes
4
-
5
- - [#3845](https://github.com/mochajs/mocha/issues/3845): Update dependency "js-yaml" to v3.13.0 per npm security advisory ([**@plroebuck**](https://github.com/plroebuck))
6
-
7
- ## :tada: Enhancements
8
-
9
- - [#3766](https://github.com/mochajs/mocha/issues/3766): Make reporter constructor support optional `options` parameter ([**@plroebuck**](https://github.com/plroebuck))
10
- - [#3760](https://github.com/mochajs/mocha/issues/3760): Add support for config files with `.jsonc` extension ([**@sstephant**](https://github.com/sstephant))
11
-
12
- ## :fax: Deprecations
13
-
14
- These are _soft_-deprecated, and will emit a warning upon use. Support will be removed in (likely) the next major version of Mocha:
15
-
16
- - [#3719](https://github.com/mochajs/mocha/issues/3719): Deprecate `this.skip()` for "after all" hooks ([**@juergba**](https://github.com/juergba))
17
-
18
- ## :bug: Fixes
19
-
20
- - [#3829](https://github.com/mochajs/mocha/issues/3829): Use cwd-relative pathname to load config file ([**@plroebuck**](https://github.com/plroebuck))
21
- - [#3745](https://github.com/mochajs/mocha/issues/3745): Fix async calls of `this.skip()` in "before each" hooks ([**@juergba**](https://github.com/juergba))
22
- - [#3669](https://github.com/mochajs/mocha/issues/3669): Enable `--allow-uncaught` for uncaught exceptions thrown inside hooks ([**@givanse**](https://github.com/givanse))
23
-
24
- and some regressions:
25
-
26
- - [#3848](https://github.com/mochajs/mocha/issues/3848): Fix `Suite` cloning by copying `root` property ([**@fatso83**](https://github.com/fatso83))
27
- - [#3816](https://github.com/mochajs/mocha/issues/3816): Guard against undefined timeout option ([**@boneskull**](https://github.com/boneskull))
28
- - [#3814](https://github.com/mochajs/mocha/issues/3814): Update "yargs" in order to avoid deprecation message ([**@boneskull**](https://github.com/boneskull))
29
- - [#3788](https://github.com/mochajs/mocha/issues/3788): Fix support for multiple node flags ([**@aginzberg**](https://github.com/aginzberg))
30
-
31
- ## :book: Documentation
32
-
33
- - [mochajs/mocha-examples](https://github.com/mochajs/mocha-examples): New repository of working examples of common configurations using mocha ([**@craigtaub**](https://github.com/craigtaub))
34
- - [#3850](https://github.com/mochajs/mocha/issues/3850): Remove pound icon showing on header hover on docs ([**@jd2rogers2**](https://github.com/jd2rogers2))
35
- - [#3812](https://github.com/mochajs/mocha/issues/3812): Add autoprefixer to documentation page CSS ([**@Munter**](https://github.com/Munter))
36
- - [#3811](https://github.com/mochajs/mocha/issues/3811): Update doc examples "tests.html" ([**@DavidLi119**](https://github.com/DavidLi119))
37
- - [#3807](https://github.com/mochajs/mocha/issues/3807): Mocha website HTML tweaks ([**@plroebuck**](https://github.com/plroebuck))
38
- - [#3793](https://github.com/mochajs/mocha/issues/3793): Update config file example ".mocharc.yml" ([**@cspotcode**](https://github.com/cspotcode))
39
-
40
- ## :nut_and_bolt: Other
41
-
42
- - [#3830](https://github.com/mochajs/mocha/issues/3830): Replace dependency "findup-sync" with "find-up" for faster startup ([**@cspotcode**](https://github.com/cspotcode))
43
- - [#3799](https://github.com/mochajs/mocha/issues/3799): Update devDependencies to fix many npm vulnerabilities ([**@XhmikosR**](https://github.com/XhmikosR))
44
-
45
- # 6.0.2 / 2019-02-25
46
-
47
- ## :bug: Fixes
48
-
49
- Two more regressions fixed:
50
-
51
- - [#3768](https://github.com/mochajs/mocha/issues/3768): Test file paths no longer dropped from `mocha.opts` ([**@boneskull**](https://github.com/boneskull))
52
- - [#3767](https://github.com/mochajs/mocha/issues/3767): `--require` does not break on module names that look like certain `node` flags ([**@boneskull**](https://github.com/boneskull))
53
-
54
- # 6.0.1 / 2019-02-21
55
-
56
- The obligatory round of post-major-release bugfixes.
57
-
58
- ## :bug: Fixes
59
-
60
- These issues were regressions.
61
-
62
- - [#3754](https://github.com/mochajs/mocha/issues/3754): Mocha again finds `test.js` when run without arguments ([**@plroebuck**](https://github.com/plroebuck))
63
- - [#3756](https://github.com/mochajs/mocha/issues/3756): Mocha again supports third-party interfaces via `--ui` ([**@boneskull**](https://github.com/boneskull))
64
- - [#3755](https://github.com/mochajs/mocha/issues/3755): Fix broken `--watch` ([**@boneskull**](https://github.com/boneskull))
65
- - [#3759](https://github.com/mochajs/mocha/issues/3759): Fix unwelcome deprecation notice when Mocha run against languages (CoffeeScript) with implicit return statements; _returning a non-`undefined` value from a `describe` callback is no longer considered deprecated_ ([**@boneskull**](https://github.com/boneskull))
66
-
67
- ## :book: Documentation
68
-
69
- - [#3738](https://github.com/mochajs/mocha/issues/3738): Upgrade to `@mocha/docdash@2` ([**@tendonstrength**](https://github.com/tendonstrength))
70
- - [#3751](https://github.com/mochajs/mocha/issues/3751): Use preferred names for example config files ([**@Szauka**](https://github.com/Szauka))
71
-
72
- # 6.0.0 / 2019-02-18
73
-
74
- ## :tada: Enhancements
75
-
76
- - [#3726](https://github.com/mochajs/mocha/issues/3726): Add ability to unload files from `require` cache ([**@plroebuck**](https://github.com/plroebuck))
77
-
78
- ## :bug: Fixes
79
-
80
- - [#3737](https://github.com/mochajs/mocha/issues/3737): Fix falsy values from options globals ([**@plroebuck**](https://github.com/plroebuck))
81
- - [#3707](https://github.com/mochajs/mocha/issues/3707): Fix encapsulation issues for `Suite#_onlyTests` and `Suite#_onlySuites` ([**@vkarpov15**](https://github.com/vkarpov15))
82
- - [#3711](https://github.com/mochajs/mocha/issues/3711): Fix diagnostic messages dealing with plurality and markup of output ([**@plroebuck**](https://github.com/plroebuck))
83
- - [#3723](https://github.com/mochajs/mocha/issues/3723): Fix "reporter-option" to allow comma-separated options ([**@boneskull**](https://github.com/boneskull))
84
- - [#3722](https://github.com/mochajs/mocha/issues/3722): Fix code quality and performance of `lookupFiles` and `files` ([**@plroebuck**](https://github.com/plroebuck))
85
- - [#3650](https://github.com/mochajs/mocha/issues/3650), [#3654](https://github.com/mochajs/mocha/issues/3654): Fix noisy error message when no files found ([**@craigtaub**](https://github.com/craigtaub))
86
- - [#3632](https://github.com/mochajs/mocha/issues/3632): Tests having an empty title are no longer confused with the "root" suite ([**@juergba**](https://github.com/juergba))
87
- - [#3666](https://github.com/mochajs/mocha/issues/3666): Fix missing error codes ([**@vkarpov15**](https://github.com/vkarpov15))
88
- - [#3684](https://github.com/mochajs/mocha/issues/3684): Fix exiting problem in Node.js v11.7.0+ ([**@addaleax**](https://github.com/addaleax))
89
- - [#3691](https://github.com/mochajs/mocha/issues/3691): Fix `--delay` (and other boolean options) not working in all cases ([**@boneskull**](https://github.com/boneskull))
90
- - [#3692](https://github.com/mochajs/mocha/issues/3692): Fix invalid command-line argument usage not causing actual errors ([**@boneskull**](https://github.com/boneskull))
91
- - [#3698](https://github.com/mochajs/mocha/issues/3698), [#3699](https://github.com/mochajs/mocha/issues/3699): Fix debug-related Node.js options not working in all cases ([**@boneskull**](https://github.com/boneskull))
92
- - [#3700](https://github.com/mochajs/mocha/issues/3700): Growl notifications now show the correct number of tests run ([**@outsideris**](https://github.com/outsideris))
93
- - [#3686](https://github.com/mochajs/mocha/issues/3686): Avoid potential ReDoS when diffing large objects ([**@cyjake**](https://github.com/cyjake))
94
- - [#3715](https://github.com/mochajs/mocha/issues/3715): Fix incorrect order of emitted events when used programmatically ([**@boneskull**](https://github.com/boneskull))
95
- - [#3706](https://github.com/mochajs/mocha/issues/3706): Fix regression wherein `--reporter-option`/`--reporter-options` did not support comma-separated key/value pairs ([**@boneskull**](https://github.com/boneskull))
96
-
97
- ## :book: Documentation
98
-
99
- - [#3652](https://github.com/mochajs/mocha/issues/3652): Switch from Jekyll to Eleventy ([**@Munter**](https://github.com/Munter))
100
-
101
- ## :nut_and_bolt: Other
102
-
103
- - [#3677](https://github.com/mochajs/mocha/issues/3677): Add error objects for createUnsupportedError and createInvalidExceptionError ([**@boneskull**](https://github.com/boneskull))
104
- - [#3733](https://github.com/mochajs/mocha/issues/3733): Removed unnecessary processing in post-processing hook ([**@wanseob**](https://github.com/wanseob))
105
- - [#3730](https://github.com/mochajs/mocha/issues/3730): Update nyc to latest version ([**@coreyfarrell**](https://github.com/coreyfarrell))
106
- - [#3648](https://github.com/mochajs/mocha/issues/3648), [#3680](https://github.com/mochajs/mocha/issues/3680): Fixes to support latest versions of [unexpected](https://npm.im/unexpected) and [unexpected-sinon](https://npm.im/unexpected-sinon) ([**@sunesimonsen**](https://github.com/sunesimonsen))
107
- - [#3638](https://github.com/mochajs/mocha/issues/3638): Add meta tag to site ([**@MartijnCuppens**](https://github.com/MartijnCuppens))
108
- - [#3653](https://github.com/mochajs/mocha/issues/3653): Fix parts of test suite failing to run on Windows ([**@boneskull**](https://github.com/boneskull))
109
-
110
- # 6.0.0-1 / 2019-01-02
111
-
112
- ## :bug: Fixes
113
-
114
- - Fix missing `mocharc.json` in published package ([**@boneskull**](https://github.com/boneskull))
115
-
116
- # 6.0.0-0 / 2019-01-01
117
-
118
- **Documentation for this release can be found at [next.mochajs.org](https://next.mochajs.org)**!
119
-
120
- Welcome [**@plroebuck**](https://github.com/plroebuck), [**@craigtaub**](https://github.com/craigtaub), & [**@markowsiak**](https://github.com/markowsiak) to the team!
121
-
122
- ## :boom: Breaking Changes
123
-
124
- - [#3149](https://github.com/mochajs/mocha/issues/3149): **Drop Node.js v4.x support** ([**@outsideris**](https://github.com/outsideris))
125
- - [#3556](https://github.com/mochajs/mocha/issues/3556): Changes to command-line options ([**@boneskull**](https://github.com/boneskull)):
126
- - `--grep` and `--fgrep` are now mutually exclusive; attempting to use both will cause Mocha to fail instead of simply ignoring `--grep`
127
- - `--compilers` is no longer supported; attempting to use will cause Mocha to fail with a link to more information
128
- - `-d` is no longer an alias for `--debug`; `-d` is currently ignored
129
- - [#3275](https://github.com/mochajs/mocha/issues/3275): `--watch-extensions` no longer implies `js`; it must be explicitly added ([**@TheDancingCode**](https://github.com/TheDancingCode))
130
- - [#2908](https://github.com/mochajs/mocha/issues/2908): `tap` reporter emits error messages ([**@chrmod**](https://github.com/chrmod))
131
- - [#2819](https://github.com/mochajs/mocha/issues/2819): When conditionally skipping in a `before` hook, subsequent `before` hooks _and_ tests in nested suites are now skipped ([**@bannmoore**](https://github.com/bannmoore))
132
- - [#627](https://github.com/mochajs/mocha/issues/627): Emit filepath in "timeout exceeded" exceptions where applicable ([**@boneskull**](https://github.com/boneskull))
133
- - [#3556](https://github.com/mochajs/mocha/issues/3556): `lib/template.html` has moved to `lib/browser/template.html` ([**@boneskull**](https://github.com/boneskull))
134
- - [#2576](https://github.com/mochajs/mocha/issues/2576): An exception is now thrown if Mocha fails to parse or find a `mocha.opts` at a user-specified path ([**@plroebuck**](https://github.com/plroebuck))
135
- - [#3458](https://github.com/mochajs/mocha/issues/3458): Instantiating a `Base`-extending reporter without a `Runner` parameter will throw an exception ([**@craigtaub**](https://github.com/craigtaub))
136
- - [#3125](https://github.com/mochajs/mocha/issues/3125): For consumers of Mocha's programmatic API, all exceptions thrown from Mocha now have a `code` property (and some will have additional metadata). Some `Error` messages have changed. **Please use the `code` property to check `Error` types instead of the `message` property**; these descriptions will be localized in the future. ([**@craigtaub**](https://github.com/craigtaub))
137
-
138
- ## :fax: Deprecations
139
-
140
- These are _soft_-deprecated, and will emit a warning upon use. Support will be removed in (likely) the next major version of Mocha:
141
-
142
- - `-gc` users should use `--gc-global` instead
143
- - Consumers of the function exported by `bin/options` should now use the `loadMochaOpts` or `loadOptions` (preferred) functions exported by the `lib/cli/options` module
144
-
145
- Regarding the `Mocha` class constructor (from `lib/mocha`):
146
-
147
- - Use property `color: false` instead of `useColors: false`
148
- - Use property `timeout: false` instead of `enableTimeouts: false`
149
-
150
- All of the above deprecations were introduced by [#3556](https://github.com/mochajs/mocha/issues/3556).
151
-
152
- `mocha.opts` is now considered "legacy"; please prefer RC file or `package.json` over `mocha.opts`.
153
-
154
- ## :tada: Enhancements
155
-
156
- Enhancements introduced in [#3556](https://github.com/mochajs/mocha/issues/3556):
157
-
158
- - Mocha now supports "RC" files in JS, JSON, YAML, or `package.json`-based (using `mocha` property) format
159
-
160
- - `.mocharc.js`, `.mocharc.json`, `.mocharc.yaml` or `.mocharc.yml` are valid "rc" file names and will be automatically loaded
161
- - Use `--config /path/to/rc/file` to specify an explicit path
162
- - Use `--package /path/to/package.json` to specify an explicit `package.json` to read the `mocha` prop from
163
- - Use `--no-config` or `--no-package` to completely disable loading of configuration via RC file and `package.json`, respectively
164
- - Configurations are merged as applicable using the priority list:
165
- 1. Command-line arguments
166
- 1. RC file
167
- 1. `package.json`
168
- 1. `mocha.opts`
169
- 1. Mocha's own defaults
170
- - Check out these [example config files](https://github.com/mochajs/mocha/tree/master/example/config)
171
-
172
- - Node/V8 flag support in `mocha` executable:
173
-
174
- - Support all allowed `node` flags as supported by the running version of `node` (also thanks to [**@demurgos**](https://github.com/demurgos))
175
- - Support any V8 flag by prepending `--v8-` to the flag name
176
- - All flags are also supported via config files, `package.json` properties, or `mocha.opts`
177
- - Debug-related flags (e.g., `--inspect`) now _imply_ `--no-timeouts`
178
- - Use of e.g., `--debug` will automatically invoke `--inspect` if supported by running version of `node`
179
-
180
- - Support negation of any Mocha-specific command-line flag by prepending `--no-` to the flag name
181
-
182
- - Interfaces now have descriptions when listed using `--interfaces` flag
183
-
184
- - `Mocha` constructor supports all options
185
-
186
- - `--extension` is now an alias for `--watch-extensions` and affects _non-watch-mode_ test runs as well. For example, to run _only_ `test/*.coffee` (not `test/*.js`), you can do `mocha --require coffee-script/register --extensions coffee`.
187
-
188
- - [#3552](https://github.com/mochajs/mocha/issues/3552): `tap` reporter is now TAP13-capable ([**@plroebuck**](https://github.com/plroebuck) & [**@mollstam**](https://github.com/mollstam))
189
-
190
- - [#3535](https://github.com/mochajs/mocha/issues/3535): Mocha's version can now be queried programmatically via public property `Mocha.prototype.version` ([**@plroebuck**](https://github.com/plroebuck))
191
-
192
- - [#3428](https://github.com/mochajs/mocha/issues/3428): `xunit` reporter shows diffs ([**@mlucool**](https://github.com/mlucool))
193
-
194
- - [#2529](https://github.com/mochajs/mocha/issues/2529): `Runner` now emits a `retry` event when tests are retried (reporters can listen for this) ([**@catdad**](https://github.com/catdad))
195
-
196
- - [#2962](https://github.com/mochajs/mocha/issues/2962), [#3111](https://github.com/mochajs/mocha/issues/3111): In-browser notification support; warn about missing prereqs when `--growl` supplied ([**@plroebuck**](https://github.com/plroebuck))
197
-
198
- ## :bug: Fixes
199
-
200
- - [#3356](https://github.com/mochajs/mocha/issues/3356): `--no-timeouts` and `--timeout 0` now does what you'd expect ([**@boneskull**](https://github.com/boneskull))
201
- - [#3475](https://github.com/mochajs/mocha/issues/3475): Restore `--no-exit` option ([**@boneskull**](https://github.com/boneskull))
202
- - [#3570](https://github.com/mochajs/mocha/issues/3570): Long-running tests now respect `SIGINT` ([**@boneskull**](https://github.com/boneskull))
203
- - [#2944](https://github.com/mochajs/mocha/issues/2944): `--forbid-only` and `--forbid-pending` now "fail fast" when encountered on a suite ([**@outsideris**](https://github.com/outsideris))
204
- - [#1652](https://github.com/mochajs/mocha/issues/1652), [#2951](https://github.com/mochajs/mocha/issues/2951): Fix broken clamping of timeout values ([**@plroebuck**](https://github.com/plroebuck))
205
- - [#2095](https://github.com/mochajs/mocha/issues/2095), [#3521](https://github.com/mochajs/mocha/issues/3521): Do not log `stdout:` prefix in browser console ([**@Bamieh**](https://github.com/Bamieh))
206
- - [#3595](https://github.com/mochajs/mocha/issues/3595): Fix mochajs.org deployment problems ([**@papandreou**](https://github.com/papandreou))
207
- - [#3518](https://github.com/mochajs/mocha/issues/3518): Improve `utils.isPromise()` ([**@fabiosantoscode**](https://github.com/fabiosantoscode))
208
- - [#3320](https://github.com/mochajs/mocha/issues/3320): Fail gracefully when non-extensible objects are thrown in async tests ([**@fargies**](https://github.com/fargies))
209
- - [#2475](https://github.com/mochajs/mocha/issues/2475): XUnit does not duplicate test result numbers in "errors" and "failures"; "failures" will **always** be zero ([**@mlucool**](https://github.com/mlucool))
210
- - [#3398](https://github.com/mochajs/mocha/issues/3398), [#3598](https://github.com/mochajs/mocha/issues/3598), [#3457](https://github.com/mochajs/mocha/issues/3457), [#3617](https://github.com/mochajs/mocha/issues/3617): Fix regression wherein `--bail` would not execute "after" nor "after each" hooks ([**@juergba**](https://github.com/juergba))
211
- - [#3580](https://github.com/mochajs/mocha/issues/3580): Fix potential exception when using XUnit reporter programmatically ([**@Lana-Light**](https://github.com/Lana-Light))
212
- - [#1304](https://github.com/mochajs/mocha/issues/1304): Do not output color to `TERM=dumb` ([**@plroebuck**](https://github.com/plroebuck))
213
-
214
- ## :book: Documentation
215
-
216
- - [#3525](https://github.com/mochajs/mocha/issues/3525): Improvements to `.github/CONTRIBUTING.md` ([**@markowsiak**](https://github.com/markowsiak))
217
- - [#3466](https://github.com/mochajs/mocha/issues/3466): Update description of `slow` option ([**@finfin**](https://github.com/finfin))
218
- - [#3405](https://github.com/mochajs/mocha/issues/3405): Remove references to bower installations ([**@goteamtim**](https://github.com/goteamtim))
219
- - [#3361](https://github.com/mochajs/mocha/issues/3361): Improvements to `--watch` docs ([**@benglass**](https://github.com/benglass))
220
- - [#3136](https://github.com/mochajs/mocha/issues/3136): Improve docs around globbing and shell expansion ([**@akrawchyk**](https://github.com/akrawchyk))
221
- - [#2819](https://github.com/mochajs/mocha/issues/2819): Update docs around skips and hooks ([**@bannmoore**](https://github.com/bannmoore))
222
- - Many improvements by [**@outsideris**](https://github.com/outsideris)
223
-
224
- ## :nut_and_bolt: Other
225
-
226
- - [#3557](https://github.com/mochajs/mocha/issues/3557): Use `ms` userland module instead of hand-rolled solution ([**@gizemkeser**](https://github.com/gizemkeser))
227
- - Many CI fixes and other refactors by [**@plroebuck**](https://github.com/plroebuck)
228
- - Test refactors by [**@outsideris**](https://github.com/outsideris)
229
-
230
- # 5.2.0 / 2018-05-18
231
-
232
- ## :tada: Enhancements
233
-
234
- - [#3375](https://github.com/mochajs/mocha/pull/3375): Add support for comments in `mocha.opts` ([@plroebuck](https://github.com/plroebuck))
235
-
236
- ## :bug: Fixes
237
-
238
- - [#3346](https://github.com/mochajs/mocha/pull/3346): Exit correctly from `before` hooks when using `--bail` ([@outsideris](https://github.com/outsideris))
239
-
240
- ## :book: Documentation
241
-
242
- - [#3328](https://github.com/mochajs/mocha/pull/3328): Mocha-flavored [API docs](https://mochajs.org/api/)! ([@Munter](https://github.com/munter))
243
-
244
- ## :nut_and_bolt: Other
245
-
246
- - [#3330](https://github.com/mochajs/mocha/pull/3330): Use `Buffer.from()` ([@harrysarson](https://github.com/harrysarson))
247
- - [#3295](https://github.com/mochajs/mocha/pull/3295): Remove redundant folder ([@DavNej](https://github.com/DajNev))
248
- - [#3356](https://github.com/mochajs/mocha/pull/3356): Refactoring ([@plroebuck](https://github.com/plroebuck))
249
-
250
- # 5.1.1 / 2018-04-18
251
-
252
- ## :bug: Fixes
253
-
254
- - [#3325](https://github.com/mochajs/mocha/issues/3325): Revert change which broke `--watch` ([@boneskull](https://github.com/boneskull))
255
-
256
- # 5.1.0 / 2018-04-12
257
-
258
- ## :tada: Enhancements
259
-
260
- - [#3210](https://github.com/mochajs/mocha/pull/3210): Add `--exclude` option ([@metalex9](https://github.com/metalex9))
261
-
262
- ## :bug: Fixes
263
-
264
- - [#3318](https://github.com/mochajs/mocha/pull/3318): Fix failures in circular objects in JSON reporter ([@jeversmann](https://github.com/jeversmann), [@boneskull](https://github.com/boneskull))
265
-
266
- ## :book: Documentation
267
-
268
- - [#3323](https://github.com/mochajs/mocha/pull/3323): Publish actual [API documentation](https://mochajs.org/api/)! ([@dfberry](https://github.com/dfberry), [@Munter](https://github.com/munter))
269
- - [#3299](https://github.com/mochajs/mocha/pull/3299): Improve docs around exclusive tests ([@nicgirault](https://github.com/nicgirault))
270
-
271
- ## :nut_and_bolt: Other
272
-
273
- - [#3302](https://github.com/mochajs/mocha/pull/3302), [#3308](https://github.com/mochajs/mocha/pull/3308), [#3310](https://github.com/mochajs/mocha/pull/3310), [#3315](https://github.com/mochajs/mocha/pull/3315), [#3316](https://github.com/mochajs/mocha/pull/3316): Build matrix improvements ([more info](https://boneskull.com/mocha-and-travis-ci-build-stages/)) ([@outsideris](https://github.com/outsideris), [@boneskull](https://github.com/boneskull))
274
- - [#3272](https://github.com/mochajs/mocha/pull/3272): Refactor reporter tests ([@jMuzsik](https://github.com/jMuzsik))
275
-
276
- # 5.0.5 / 2018-03-22
277
-
278
- Welcome [@outsideris](https://github.com/outsideris) to the team!
279
-
280
- ## :bug: Fixes
281
-
282
- - [#3096](https://github.com/mochajs/mocha/issues/3096): Fix `--bail` failing to bail within hooks ([@outsideris](https://github.com/outsideris))
283
- - [#3184](https://github.com/mochajs/mocha/issues/3184): Don't skip too many suites (using `describe.skip()`) ([@outsideris](https://github.com/outsideris))
284
-
285
- ## :book: Documentation
286
-
287
- - [#3133](https://github.com/mochajs/mocha/issues/3133): Improve docs regarding "pending" behavior ([@ematicipo](https://github.com/ematicipo))
288
- - [#3276](https://github.com/mochajs/mocha/pull/3276), [#3274](https://github.com/mochajs/mocha/pull/3274): Fix broken stuff in `CHANGELOG.md` ([@tagoro9](https://github.com/tagoro9), [@honzajavorek](https://github.com/honzajavorek))
289
-
290
- ## :nut_and_bolt: Other
291
-
292
- - [#3208](https://github.com/mochajs/mocha/issues/3208): Improve test coverage for AMD users ([@outsideris](https://github.com/outsideris))
293
- - [#3267](https://github.com/mochajs/mocha/pull/3267): Remove vestiges of PhantomJS from CI ([@anishkny](https://github.com/anishkny))
294
- - [#2952](https://github.com/mochajs/mocha/issues/2952): Fix a debug message ([@boneskull](https://github.com/boneskull))
295
-
296
- # 5.0.4 / 2018-03-07
297
-
298
- ## :bug: Fixes
299
-
300
- - [#3265](https://github.com/mochajs/mocha/issues/3265): Fixes regression in "watch" functionality introduced in v5.0.2 ([@outsideris](https://github.com/outsideris))
301
-
302
- # 5.0.3 / 2018-03-06
303
-
304
- This patch features a fix to address a potential "low severity" [ReDoS vulnerability](https://snyk.io/vuln/npm:diff:20180305) in the [diff](https://npm.im/diff) package (a dependency of Mocha).
305
-
306
- ## :lock: Security Fixes
307
-
308
- - [#3266](https://github.com/mochajs/mocha/pull/3266): Bump `diff` to v3.5.0 ([@anishkny](https://github.com/anishkny))
309
-
310
- ## :nut_and_bolt: Other
311
-
312
- - [#3011](https://github.com/mochajs/mocha/issues/3011): Expose `generateDiff()` in `Base` reporter ([@harrysarson](https://github.com/harrysarson))
313
-
314
- # 5.0.2 / 2018-03-05
315
-
316
- This release fixes a class of tests which report as _false positives_. **Certain tests will now break**, though they would have previously been reported as passing. Details below. Sorry for the inconvenience!
317
-
318
- ## :bug: Fixes
319
-
320
- - [#3226](https://github.com/mochajs/mocha/issues/3226): Do not swallow errors that are thrown asynchronously from passing tests ([@boneskull](https://github.com/boneskull)). Example:
321
-
322
- \```js
323
- it('should actually fail, sorry!', function (done) {
324
- // passing assertion
325
- assert(true === true);
326
-
327
- // test complete & is marked as passing
328
- done();
329
-
330
- // ...but something evil lurks within
331
- setTimeout(() => {
332
- throw new Error('chaos!');
333
- }, 100);
334
- });
335
- \```
336
-
337
- Previously to this version, Mocha would have _silently swallowed_ the `chaos!` exception, and you wouldn't know. Well, _now you know_. Mocha cannot recover from this gracefully, so it will exit with a nonzero code.
338
-
339
- **Maintainers of external reporters**: _If_ a test of this class is encountered, the `Runner` instance will emit the `end` event _twice_; you _may_ need to change your reporter to use `runner.once('end')` intead of `runner.on('end')`.
340
-
341
- - [#3093](https://github.com/mochajs/mocha/issues/3093): Fix stack trace reformatting problem ([@outsideris](https://github.com/outsideris))
342
-
343
- ## :nut_and_bolt: Other
344
-
345
- - [#3248](https://github.com/mochajs/mocha/issues/3248): Update `browser-stdout` to v1.3.1 ([@honzajavorek](https://github.com/honzajavorek))
346
-
347
- # 5.0.1 / 2018-02-07
348
-
349
- ...your garden-variety patch release.
350
-
351
- Special thanks to [Wallaby.js](https://wallabyjs.com) for their continued support! :heart:
352
-
353
- ## :bug: Fixes
354
-
355
- - [#1838](https://github.com/mochajs/mocha/issues/1838): `--delay` now works with `.only()` ([@silviom](https://github.com/silviom))
356
- - [#3119](https://github.com/mochajs/mocha/issues/3119): Plug memory leak present in v8 ([@boneskull](https://github.com/boneskull))
357
-
358
- ## :book: Documentation
359
-
360
- - [#3132](https://github.com/mochajs/mocha/issues/3132), [#3098](https://github.com/mochajs/mocha/issues/3098): Update `--glob` docs ([@outsideris](https://github.com/outsideris))
361
- - [#3212](https://github.com/mochajs/mocha/pull/3212): Update [Wallaby.js](https://wallabyjs.com)-related docs ([@ArtemGovorov](https://github.com/ArtemGovorov))
362
- - [#3205](https://github.com/mochajs/mocha/pull/3205): Remove outdated cruft ([@boneskull](https://github.com/boneskull))
363
-
364
- ## :nut_and_bolt: Other
365
-
366
- - [#3224](https://github.com/mochajs/mocha/pull/3224): Add proper Wallaby.js config ([@ArtemGovorov](https://github.com/ArtemGovorov))
367
- - [#3230](https://github.com/mochajs/mocha/pull/3230): Update copyright year ([@josephlin55555](https://github.com/josephlin55555))
368
-
369
- # 5.0.0 / 2018-01-17
370
-
371
- Mocha starts off 2018 right by again dropping support for _unmaintained rubbish_.
372
-
373
- Welcome [@vkarpov15](https://github.com/vkarpov15) to the team!
374
-
375
- ## :boom: Breaking Changes
376
-
377
- - **[#3148](https://github.com/mochajs/mocha/issues/3148): Drop support for IE9 and IE10** ([@Bamieh](https://github.com/Bamieh))
378
- Practically speaking, only code which consumes (through bundling or otherwise) the userland [buffer](https://npm.im/buffer) module should be affected. However, Mocha will no longer test against these browsers, nor apply fixes for them.
379
-
380
- ## :tada: Enhancements
381
-
382
- - [#3181](https://github.com/mochajs/mocha/issues/3181): Add useful new `--file` command line argument ([documentation](https://mochajs.org/#--file-file)) ([@hswolff](https://github.com/hswolff))
383
-
384
- ## :bug: Fixes
385
-
386
- - [#3187](https://github.com/mochajs/mocha/issues/3187): Fix inaccurate test duration reporting ([@FND](https://github.com/FND))
387
- - [#3202](https://github.com/mochajs/mocha/pull/3202): Fix bad markup in HTML reporter ([@DanielRuf](https://github.com/DanielRuf))
388
-
389
- ## :sunglasses: Developer Experience
390
-
391
- - [#2352](https://github.com/mochajs/mocha/issues/2352): Ditch GNU Make for [nps](https://npm.im/nps) to manage scripts ([@TedYav](https://github.com/TedYav))
392
-
393
- ## :book: Documentation
394
-
395
- - [#3137](https://github.com/mochajs/mocha/issues/3137): Add missing `--no-timeouts` docs ([@dfberry](https://github.com/dfberry))
396
- - [#3134](https://github.com/mochajs/mocha/issues/3134): Improve `done()` callback docs ([@maraisr](https://github.com/maraisr))
397
- - [#3135](https://github.com/mochajs/mocha/issues/3135): Fix cross-references ([@vkarpov15](https://github.com/vkarpov15))
398
- - [#3163](https://github.com/mochajs/mocha/pull/3163): Fix tpyos ([@tbroadley](https://github.com/tbroadley))
399
- - [#3177](https://github.com/mochajs/mocha/pull/3177): Tweak `README.md` organization ([@xxczaki](https://github.com/xxczaki))
400
- - Misc updates ([@boneskull](https://github.com/boneskull))
401
-
402
- ## :nut_and_bolt: Other
403
-
404
- - [#3118](https://github.com/mochajs/mocha/issues/3118): Move TextMate Integration to [its own repo](https://github.com/mochajs/mocha.tmbundle) ([@Bamieh](https://github.com/Bamieh))
405
- - [#3185](https://github.com/mochajs/mocha/issues/3185): Add Node.js v9 to build matrix; remove v7 ([@xxczaki](https://github.com/xxczaki))
406
- - [#3172](https://github.com/mochajs/mocha/issues/3172): Markdown linting ([@boneskull](https://github.com/boneskull))
407
- - Test & Netlify updates ([@Munter](https://github.com/munter), [@boneskull](https://github.com/boneskull))
408
-
409
- # 4.1.0 / 2017-12-28
410
-
411
- This is mainly a "housekeeping" release.
412
-
413
- Welcome [@Bamieh](https://github.com/Bamieh) and [@xxczaki](https://github.com/xxczaki) to the team!
414
-
415
- ## :bug: Fixes
416
-
417
- - [#2661](https://github.com/mochajs/mocha/issues/2661): `progress` reporter now accepts reporter options ([@canoztokmak](https://github.com/canoztokmak))
418
- - [#3142](https://github.com/mochajs/mocha/issues/3142): `xit` in `bdd` interface now properly returns its `Test` object ([@Bamieh](https://github.com/Bamieh))
419
- - [#3075](https://github.com/mochajs/mocha/pull/3075): Diffs now computed eagerly to avoid misinformation when reported ([@abrady0](https://github.com/abrady0))
420
- - [#2745](https://github.com/mochajs/mocha/issues/2745): `--help` will now help you even if you have a `mocha.opts` ([@Zarel](https://github.com/Zarel))
421
-
422
- ## :tada: Enhancements
423
-
424
- - [#2514](https://github.com/mochajs/mocha/issues/2514): The `--no-diff` flag will completely disable diff output ([@CapacitorSet](https://github.com/CapacitorSet))
425
- - [#3058](https://github.com/mochajs/mocha/issues/3058): All "setters" in Mocha's API are now also "getters" if called without arguments ([@makepanic](https://github.com/makepanic))
426
-
427
- ## :book: Documentation
428
-
429
- - [#3170](https://github.com/mochajs/mocha/pull/3170): Optimization and site speed improvements ([@Munter](https://github.com/munter))
430
- - [#2987](https://github.com/mochajs/mocha/issues/2987): Moved the old [site repo](https://github.com/mochajs/mochajs.github.io) into the main repo under `docs/` ([@boneskull](https://github.com/boneskull))
431
- - [#2896](https://github.com/mochajs/mocha/issues/2896): Add [maintainer guide](https://github.com/mochajs/mocha/blob/master/MAINTAINERS.md) ([@boneskull](https://github.com/boneskull))
432
- - Various fixes and updates ([@xxczaki](https://github.com/xxczaki), [@maty21](https://github.com/maty21), [@leedm777](https://github.com/leedm777))
433
-
434
- ## :nut_and_bolt: Other
435
-
436
- - Test improvements and fixes ([@eugenet8k](https://github.com/eugenet8k), [@ngeor](https://github.com/ngeor), [@38elements](https://github.com/38elements), [@Gerhut](https://github.com/Gerhut), [@ScottFreeCode](https://github.com/ScottFreeCode), [@boneskull](https://github.com/boneskull))
437
- - Refactoring and cruft excision ([@38elements](https://github.com/38elements), [@Bamieh](https://github.com/Bamieh), [@finnigantime](https://github.com/finnigantime), [@boneskull](https://github.com/boneskull))
438
-
439
- # 4.0.1 / 2017-10-05
440
-
441
- ## :bug: Fixes
442
-
443
- - [#3051](https://github.com/mochajs/mocha/pull/3051): Upgrade Growl to v1.10.3 to fix its [peer dep problems](https://github.com/tj/node-growl/pull/68) ([@dpogue](https://github.com/dpogue))
444
-
445
- # 4.0.0 / 2017-10-02
446
-
447
- You might want to read this before filing a new bug! :stuck_out_tongue_closed_eyes:
448
-
449
- ## :boom: Breaking Changes
450
-
451
- For more info, please [read this article](https://boneskull.com/mocha-v4-nears-release/).
452
-
453
- ### Compatibility
454
-
455
- - [#3016](https://github.com/mochajs/mocha/issues/3016): Drop support for unmaintained versions of Node.js ([@boneskull](https://github.com/boneskull)):
456
- - 0.10.x
457
- - 0.11.x
458
- - 0.12.x
459
- - iojs (any)
460
- - 5.x.x
461
- - [#2979](https://github.com/mochajs/mocha/issues/2979): Drop support for non-ES5-compliant browsers ([@boneskull](https://github.com/boneskull)):
462
- - IE7
463
- - IE8
464
- - PhantomJS 1.x
465
- - [#2615](https://github.com/mochajs/mocha/issues/2615): Drop Bower support; old versions (3.x, etc.) will remain available ([@ScottFreeCode](https://github.com/ScottFreeCode), [@boneskull](https://github.com/boneskull))
466
-
467
- ### Default Behavior
468
-
469
- - [#2879](https://github.com/mochajs/mocha/issues/2879): By default, Mocha will no longer force the process to exit once all tests complete. This means any test code (or code under test) which would normally prevent `node` from exiting will do so when run in Mocha. Supply the `--exit` flag to revert to pre-v4.0.0 behavior ([@ScottFreeCode](https://github.com/ScottFreeCode), [@boneskull](https://github.com/boneskull))
470
-
471
- ### Reporter Output
472
-
473
- - [#2095](https://github.com/mochajs/mocha/issues/2095): Remove `stdout:` prefix from browser reporter logs ([@skeggse](https://github.com/skeggse))
474
- - [#2295](https://github.com/mochajs/mocha/issues/2295): Add separator in "unified diff" output ([@olsonpm](https://github.com/olsonpm))
475
- - [#2686](https://github.com/mochajs/mocha/issues/2686): Print failure message when `--forbid-pending` or `--forbid-only` is specified ([@ScottFreeCode](https://github.com/ScottFreeCode))
476
- - [#2814](https://github.com/mochajs/mocha/pull/2814): Indent contexts for better readability when reporting failures ([@charlierudolph](https://github.com/charlierudolph))
477
-
478
- ## :-1: Deprecations
479
-
480
- - [#2493](https://github.com/mochajs/mocha/issues/2493): The `--compilers` command-line option is now soft-deprecated and will emit a warning on `STDERR`. Read [this](https://github.com/mochajs/mocha/wiki/compilers-deprecation) for more info and workarounds ([@ScottFreeCode](https://github.com/ScottFreeCode), [@boneskull](https://github.com/boneskull))
481
-
482
- ## :tada: Enhancements
483
-
484
- - [#2628](https://github.com/mochajs/mocha/issues/2628): Allow override of default test suite name in XUnit reporter ([@ngeor](https://github.com/ngeor))
485
-
486
- ## :book: Documentation
487
-
488
- - [#3020](https://github.com/mochajs/mocha/pull/3020): Link to CLA in `README.md` and `CONTRIBUTING.md` ([@skeggse](https://github.com/skeggse))
489
-
490
- ## :nut_and_bolt: Other
491
-
492
- - [#2890](https://github.com/mochajs/mocha/issues/2890): Speed up build by (re-)consolidating SauceLabs tests ([@boneskull](https://github.com/boneskull))
493
-
494
- # 3.5.3 / 2017-09-11
495
-
496
- ## :bug: Fixes
497
-
498
- - [#3003](https://github.com/mochajs/mocha/pull/3003): Fix invalid entities in xUnit reporter first appearing in v3.5.1 ([@jkrems](https://github.com/jkrems))
499
-
500
- # 3.5.2 / 2017-09-10
501
-
502
- ## :bug: Fixes
503
-
504
- - [#3001](https://github.com/mochajs/mocha/pull/3001): Fix AMD-related failures first appearing in v3.5.1 ([@boneskull](https://github.com/boneskull))
505
-
506
- # 3.5.1 / 2017-09-09
507
-
508
- ## :newspaper: News
509
-
510
- - :mega: Mocha is now sponsoring [PDXNode](http://pdxnode.org)! If you're in the [Portland](https://wikipedia.org/wiki/Portland,_Oregon) area, come check out the monthly talks and hack nights!
511
-
512
- ## :bug: Fixes
513
-
514
- - [#2997](https://github.com/mochajs/mocha/pull/2997): Fix missing `xit` export for "require" interface ([@solodynamo](https://github.com/solodynamo))
515
- - [#2957](https://github.com/mochajs/mocha/pull/2957): Fix unicode character handling in XUnit reporter failures ([@jkrems](https://github.com/jkrems))
516
-
517
- ## :nut_and_bolt: Other
518
-
519
- - [#2986](https://github.com/mochajs/mocha/pull/2986): Add issue and PR templates ([@kungapal](https://github.com/kungapal))
520
- - [#2918](https://github.com/mochajs/mocha/pull/2918): Drop bash dependency for glob-related tests ([@ScottFreeCode](https://github.com/ScottFreeCode))
521
- - [#2922](https://github.com/mochajs/mocha/pull/2922): Improve `--compilers` coverage ([@ScottFreeCode](https://github.com/ScottFreeCode))
522
- - [#2981](https://github.com/mochajs/mocha/pull/2981): Fix tpyos and spelling errors ([@jsoref](https://github.com/jsoref))
523
-
524
- # 3.5.0 / 2017-07-31
525
-
526
- ## :newspaper: News
527
-
528
- - Mocha now has a [code of conduct](https://github.com/mochajs/mocha/blob/master/.github/CODE_OF_CONDUCT.md) (thanks [@kungapal](https://github.com/kungapal)!).
529
- - Old issues and PRs are now being marked "stale" by [Probot's "Stale" plugin](https://github.com/probot/stale). If an issue is marked as such, and you would like to see it remain open, simply add a new comment to the ticket or PR.
530
- - **WARNING**: Support for non-ES5-compliant environments will be dropped starting with version 4.0.0 of Mocha!
531
-
532
- ## :lock: Security Fixes
533
-
534
- - [#2860](https://github.com/mochajs/mocha/pull/2860): Address [CVE-2015-8315](https://nodesecurity.io/advisories/46) via upgrade of [debug](https://npm.im/debug) ([@boneskull](https://github.com/boneskull))
535
-
536
- ## :tada: Enhancements
537
-
538
- - [#2696](https://github.com/mochajs/mocha/pull/2696): Add `--forbid-only` and `--forbid-pending` flags. Use these in CI or hooks to ensure tests aren't accidentally being skipped! ([@charlierudolph](https://github.com/charlierudolph))
539
- - [#2813](https://github.com/mochajs/mocha/pull/2813): Support Node.js 8's `--napi-modules` flag ([@jupp0r](https://github.com/jupp0r))
540
-
541
- ## :nut_and_bolt: Other
542
-
543
- - Various CI-and-test-related fixes and improvements ([@boneskull](https://github.com/boneskull), [@dasilvacontin](https://github.com/dasilvacontin), [@PopradiArpad](https://github.com/PopradiArpad), [@Munter](https://github.com/munter), [@ScottFreeCode](https://github.com/ScottFreeCode))
544
- - "Officially" support Node.js 8 ([@elergy](https://github.com/elergy))
545
-
546
- # 3.4.2 / 2017-05-24
547
-
548
- ## :bug: Fixes
549
-
550
- - [#2802](https://github.com/mochajs/mocha/issues/2802): Remove call to deprecated `os.tmpDir` ([@makepanic](https://github.com/makepanic))
551
- - [#2820](https://github.com/mochajs/mocha/pull/2820): Eagerly set `process.exitCode` ([@chrisleck](https://github.com/chrisleck))
552
-
553
- ## :nut_and_bolt: Other
554
-
555
- - [#2807](https://github.com/mochajs/mocha/pull/2807): Move linting into an npm script ([@Munter](https://github.com/munter))
556
-
557
- # 3.4.1 / 2017-05-14
558
-
559
- Fixed a publishing mishap with git's autocrlf settings.
560
-
561
- # 3.4.0 / 2017-05-14
562
-
563
- Mocha is now moving to a quicker release schedule: when non-breaking changes are merged, a release should happen that week.
564
-
565
- This week's highlights:
566
-
567
- - `allowUncaught` added to commandline as `--allow-uncaught` (and bugfixed)
568
- - warning-related Node flags
569
-
570
- ## :tada: Enhancements
571
-
572
- - [#2793](https://github.com/mochajs/mocha/pull/2793), [#2697](https://github.com/mochajs/mocha/pull/2697): add --allowUncaught to Node.js ([@lrowe](https://github.com/lrowe))
573
- - [#2733](https://github.com/mochajs/mocha/pull/2733): Add `--no-warnings` and `--trace-warnings` flags ([@sonicdoe](https://github.com/sonicdoe))
574
-
575
- ## :bug: Fixes
576
-
577
- - [#2793](https://github.com/mochajs/mocha/pull/2793), [#2697](https://github.com/mochajs/mocha/pull/2697): fix broken allowUncaught ([@lrowe](https://github.com/lrowe))
578
-
579
- ## :nut_and_bolt: Other
580
-
581
- - [#2778](https://github.com/mochajs/mocha/pull/2778): Add license report and scan status ([@xizhao](https://github.com/xizhao))
582
- - [#2794](https://github.com/mochajs/mocha/pull/2794): no special case for macOS running Karma locally ([@boneskull](https://github.com/boneskull))
583
- - [#2795](https://github.com/mochajs/mocha/pull/2795): reverts use of semistandard directly ([#2648](https://github.com/mochajs/mocha/pull/2648)) ([@boneskull](https://github.com/boneskull))
584
-
585
- # 3.3.0 / 2017-04-24
586
-
587
- Thanks to all our contributors, maintainers, sponsors, and users! ❤️
588
-
589
- As highlights:
590
-
591
- - We've got coverage now!
592
- - Testing is looking less flaky \\o/.
593
- - No more nitpicking about "mocha.js" build on PRs.
594
-
595
- ## :tada: Enhancements
596
-
597
- - [#2659](https://github.com/mochajs/mocha/pull/2659): Adds support for loading reporter from an absolute or relative path ([@sul4bh](https://github.com/sul4bh))
598
- - [#2769](https://github.com/mochajs/mocha/pull/2769): Support `--inspect-brk` on command-line ([@igwejk](https://github.com/igwejk))
599
-
600
- ## :bug: Fixes
601
-
602
- - [#2662](https://github.com/mochajs/mocha/pull/2662): Replace unicode chars w/ hex codes in HTML reporter ([@rotemdan](https://github.com/rotemdan))
603
-
604
- ## :mag: Coverage
605
-
606
- - [#2672](https://github.com/mochajs/mocha/pull/2672): Add coverage for node tests ([@c089](https://github.com/c089), [@Munter](https://github.com/munter))
607
- - [#2680](https://github.com/mochajs/mocha/pull/2680): Increase tests coverage for base reporter ([@epallerols](https://github.com/epallerols))
608
- - [#2690](https://github.com/mochajs/mocha/pull/2690): Increase tests coverage for doc reporter ([@craigtaub](https://github.com/craigtaub))
609
- - [#2701](https://github.com/mochajs/mocha/pull/2701): Increase tests coverage for landing, min, tap and list reporters ([@craigtaub](https://github.com/craigtaub))
610
- - [#2691](https://github.com/mochajs/mocha/pull/2691): Increase tests coverage for spec + dot reporters ([@craigtaub](https://github.com/craigtaub))
611
- - [#2698](https://github.com/mochajs/mocha/pull/2698): Increase tests coverage for xunit reporter ([@craigtaub](https://github.com/craigtaub))
612
- - [#2699](https://github.com/mochajs/mocha/pull/2699): Increase tests coverage for json-stream, markdown and progress reporters ([@craigtaub](https://github.com/craigtaub))
613
- - [#2703](https://github.com/mochajs/mocha/pull/2703): Cover .some() function in utils.js with tests ([@seppevs](https://github.com/seppevs))
614
- - [#2773](https://github.com/mochajs/mocha/pull/2773): Add tests for loading reporters w/ relative/absolute paths ([@sul4bh](https://github.com/sul4bh))
615
-
616
- ## :nut_and_bolt: Other
617
-
618
- - Remove bin/.eslintrc; ensure execs are linted ([@boneskull](https://github.com/boneskull))
619
- - [#2542](https://github.com/mochajs/mocha/issues/2542): Expand CONTRIBUTING.md ([@boneskull](https://github.com/boneskull))
620
- - [#2660](https://github.com/mochajs/mocha/pull/2660): Double timeouts on integration tests ([@Munter](https://github.com/munter))
621
- - [#2653](https://github.com/mochajs/mocha/pull/2653): Update copyright year ([@Scottkao85], [@Munter](https://github.com/munter))
622
- - [#2621](https://github.com/mochajs/mocha/pull/2621): Update dependencies to enable Greenkeeper ([@boneskull](https://github.com/boneskull), [@greenkeeper](https://github.com/greenkeeper))
623
- - [#2625](https://github.com/mochajs/mocha/pull/2625): Use trusty container in travis-ci; use "artifacts" addon ([@boneskull](https://github.com/boneskull))
624
- - [#2670](https://github.com/mochajs/mocha/pull/2670): doc(CONTRIBUTING): fix link to org members ([@coderbyheart](https://github.com/coderbyheart))
625
- - Add Mocha propaganda to README.md ([@boneskull](https://github.com/boneskull))
626
- - [#2470](https://github.com/mochajs/mocha/pull/2470): Avoid test flake in "delay" test ([@boneskull](https://github.com/boneskull))
627
- - [#2675](https://github.com/mochajs/mocha/pull/2675): Limit browser concurrency on sauce ([@boneskull](https://github.com/boneskull))
628
- - [#2669](https://github.com/mochajs/mocha/pull/2669): Use temporary test-only build of mocha.js for browsers tests ([@Munter](https://github.com/munter))
629
- - Fix "projects" link in README.md ([@boneskull](https://github.com/boneskull))
630
- - [#2678](https://github.com/mochajs/mocha/pull/2678): Chore(Saucelabs): test on IE9, IE10 and IE11 ([@coderbyheart](https://github.com/coderbyheart))
631
- - [#2648](https://github.com/mochajs/mocha/pull/2648): Use `semistandard` directly ([@kt3k](https://github.com/kt3k))
632
- - [#2727](https://github.com/mochajs/mocha/pull/2727): Make the build reproducible ([@lamby](https://github.com/lamby))
633
-
634
- # 3.2.0 / 2016-11-24
635
-
636
- ## :newspaper: News
637
-
638
- ### Mocha is now a JS Foundation Project!
639
-
640
- Mocha is proud to have joined the [JS Foundation](https://js.foundation). For more information, [read the announcement](https://js.foundation/announcements/2016/10/17/Linux-Foundation-Unites-JavaScript-Community-Open-Web-Development/).
641
-
642
- ### Contributor License Agreement
643
-
644
- Under the foundation, all contributors to Mocha must sign the [JS Foundation CLA](https://js.foundation/CLA/) before their code can be merged. When sending a PR--if you have not already signed the CLA--a friendly bot will ask you to do so.
645
-
646
- Mocha remains licensed under the [MIT license](https://github.com/mochajs/mocha/blob/master/LICENSE).
647
-
648
- ## :bug: Bug Fix
649
-
650
- - [#2535](https://github.com/mochajs/mocha/issues/2535): Fix crash when `--watch` encounters broken symlinks ([@villesau](https://github.com/villesau))
651
- - [#2593](https://github.com/mochajs/mocha/pull/2593): Fix (old) regression; incorrect symbol shown in `list` reporter ([@Aldaviva](https://github.com/Aldaviva))
652
- - [#2584](https://github.com/mochajs/mocha/issues/2584): Fix potential error when running XUnit reporter ([@vobujs](https://github.com/vobujs))
653
-
654
- ## :tada: Enhancement
655
-
656
- - [#2294](https://github.com/mochajs/mocha/issues/2294): Improve timeout error messaging ([@jeversmann](https://github.com/jeversmann), [@boneskull](https://github.com/boneskull))
657
- - [#2520](https://github.com/mochajs/mocha/pull/2520): Add info about `--inspect` flag to CLI help ([@ughitsaaron](https://github.com/ughitsaaron))
658
-
659
- ## :nut_and_bolt: Other
660
-
661
- - [#2570](https://github.com/mochajs/mocha/issues/2570): Use [karma-mocha](https://npmjs.com/package/karma-mocha) proper ([@boneskull](https://github.com/boneskull))
662
- - Licenses updated to reflect new copyright, add link to license and browser matrix to `README.md` ([@boneskull](https://github.com/boneskull), [@ScottFreeCode](https://github.com/ScottFreeCode), [@dasilvacontin](https://github.com/dasilvacontin))
663
-
664
- Thanks to all our contributors, sponsors and backers! Keep on the lookout for a public roadmap and new contribution guide coming soon.
665
-
666
- # 3.1.2 / 2016-10-10
667
-
668
- ## :bug: Bug Fix
669
-
670
- - [#2528](https://github.com/mochajs/mocha/issues/2528): Recovery gracefully if an `Error`'s `stack` property isn't writable ([@boneskull](https://github.com/boneskull))
671
-
672
- # 3.1.1 / 2016-10-09
673
-
674
- ## :bug: Bug Fix
675
-
676
- - [#1417](https://github.com/mochajs/mocha/issues/1417): Don't report `done()` was called multiple times when it wasn't ([@frankleonrose](https://github.com/frankleonrose))
677
-
678
- ## :nut_and_bolt: Other
679
-
680
- - [#2490](https://github.com/mochajs/mocha/issues/2490): Lint with [semistandard](https://npmjs.com/package/semistandard) config ([@makepanic](https://github.com/makepanic))
681
- - [#2525](https://github.com/mochajs/mocha/issues/2525): Lint all `.js` files ([@boneskull](https://github.com/boneskull))
682
- - [#2524](https://github.com/mochajs/mocha/issues/2524): Provide workaround for developers unable to run browser tests on macOS Sierra ([@boneskull](https://github.com/boneskull))
683
-
684
- # 3.1.0 / 2016-09-27
685
-
686
- ## :tada: Enhancement
687
-
688
- - [#2357](https://github.com/mochajs/mocha/issues/2357): Support `--inspect` on command-line ([@simov](https://github.com/simov))
689
- - [#2194](https://github.com/mochajs/mocha/issues/2194): Human-friendly error if no files are matched on command-line ([@Munter](https://github.com/munter))
690
- - [#1744](https://github.com/mochajs/mocha/issues/1744): Human-friendly error if a Suite has no callback (BDD/TDD only) ([@anton](https://github.com/anton))
691
-
692
- ## :bug: Bug Fix
693
-
694
- - [#2488](https://github.com/mochajs/mocha/issues/2488): Fix case in which _variables beginning with lowercase "D"_ may not have been reported properly as global leaks ([@JustATrick](https://github.com/JustATrick)) :laughing:
695
- - [#2465](https://github.com/mochajs/mocha/issues/2465): Always halt execution in async function when `this.skip()` is called ([@boneskull](https://github.com/boneskull))
696
- - [#2445](https://github.com/mochajs/mocha/pull/2445): Exits with expected code 130 when `SIGINT` encountered; exit code can no longer rollover at 256 ([@Munter](https://github.com/munter))
697
- - [#2315](https://github.com/mochajs/mocha/issues/2315): Fix uncaught TypeError thrown from callback stack ([@1999](https://github.com/1999))
698
- - Fix broken `only()`/`skip()` in IE7/IE8 ([@boneskull](https://github.com/boneskull))
699
- - [#2502](https://github.com/mochajs/mocha/issues/2502): Fix broken stack trace filter on Node.js under Windows ([@boneskull](https://github.com/boneskull))
700
- - [#2496](https://github.com/mochajs/mocha/issues/2496): Fix diff output for objects instantiated with `String` constructor ([more](https://youtrack.jetbrains.com/issue/WEB-23383)) ([@boneskull](https://github.com/boneskull))
701
-
702
- # 3.0.2 / 2016-08-08
703
-
704
- ## :bug: Bug Fix
705
-
706
- - [#2424](https://github.com/mochajs/mocha/issues/2424): Fix error loading Mocha via Require.js ([@boneskull](https://github.com/boneskull))
707
- - [#2417](https://github.com/mochajs/mocha/issues/2417): Fix execution of _deeply_ nested `describe.only()` suites ([@not-an-aardvark](https://github.com/not-an-aardvark))
708
- - Remove references to `json-cov` and `html-cov` reporters in CLI ([@boneskull](https://github.com/boneskull))
709
-
710
- # 3.0.1 / 2016-08-03
711
-
712
- ## :bug: Bug Fix
713
-
714
- - [#2406](https://github.com/mochajs/mocha/issues/2406): Restore execution of nested `describe.only()` suites ([@not-an-aardvark](https://github.com/not-an-aardvark))
715
-
716
- # 3.0.0 / 2016-07-31
717
-
718
- ## :boom: Breaking Changes
719
-
720
- - :warning: Due to the increasing difficulty of applying security patches made within its dependency tree, as well as looming incompatibilities with Node.js v7.0, **Mocha no longer supports Node.js v0.8**.
721
-
722
- - :warning: **Mocha may no longer be installed by versions of `npm` less than `1.4.0`.** Previously, this requirement only affected Mocha's development dependencies. In short, this allows Mocha to depend on packages which have dependencies fixed to major versions (`^`).
723
-
724
- - `.only()` is no longer "fuzzy", can be used multiple times, and generally just works like you think it should. :joy:
725
-
726
- - To avoid common bugs, when a test injects a callback function (suggesting asynchronous execution), calls it, _and_ returns a `Promise`, Mocha will now throw an exception:
727
-
728
- \```js
729
- const assert = require('assert');
730
-
731
- it('should complete this test', function (done) {
732
- return new Promise(function (resolve) {
733
- assert.ok(true);
734
- resolve();
735
- })
736
- .then(done);
737
- });
738
- \```
739
-
740
- The above test will fail with `Error: Resolution method is overspecified. Specify a callback *or* return a Promise; not both.`.
741
-
742
- - When a test timeout value _greater than_ `2147483648` is specified in any context (`--timeout`, `mocha.setup()`, per-suite, per-test, etc.), the timeout will be _disabled_ and the test(s) will be allowed to run indefinitely. This is equivalent to specifying a timeout value of `0`. See [MDN](https://developer.mozilla.org/docs/Web/API/WindowTimers/setTimeout#Maximum_delay_value) for reasoning.
743
-
744
- - The `dot` reporter now uses more visually distinctive characters when indicating "pending" and "failed" tests.
745
-
746
- - Mocha no longer supports [component](https://www.npmjs.com/package/component).
747
-
748
- - The long-forsaken `HTMLCov` and `JSONCov` reporters--and any relationship to the "node-jscoverage" project--have been removed.
749
-
750
- - `spec` reporter now omits leading carriage returns (`\r`) in non-TTY environment.
751
-
752
- ## :tada: Enhancements
753
-
754
- - [#808](https://github.com/mochajs/mocha/issues/808): Allow regular-expression-like strings in `--grep` and browser's `grep` querystring; enables flags such as `i` for case-insensitive matches and `u` for unicode. ([@a8m](https://github.com/a8m))
755
- - [#2000](https://github.com/mochajs/mocha/pull/2000): Use distinctive characters in `dot` reporter; `,` will denote a "pending" test and `!` will denote a "failing" test. ([@elliottcable](https://github.com/elliottcable))
756
- - [#1632](https://github.com/mochajs/mocha/issues/1632): Throw a useful exception when a suite or test lacks a title. ([@a8m](https://github.com/a8m))
757
- - [#1481](https://github.com/mochajs/mocha/issues/1481): Better `.only()` behavior. ([@a8m](https://github.com/a8m))
758
- - [#2334](https://github.com/mochajs/mocha/issues/2334): Allow `this.skip()` in async tests and hooks. ([@boneskull](https://github.com/boneskull))
759
- - [#1320](https://github.com/mochajs/mocha/pull/1320): Throw a useful exception when test resolution method is overspecified. ([@jugglinmike](https://github.com/jugglinmike))
760
- - [#2364](https://github.com/mochajs/mocha/pull/2364): Support `--preserve-symlinks`. ([@rosswarren](https://github.com/rosswarren))
761
-
762
- ## :bug: Bug Fixes
763
-
764
- - [#2259](https://github.com/mochajs/mocha/pull/2259): Restore ES3 compatibility. Specifically, support an environment lacking `Date.prototype.toISOString()`, `JSON`, or has a non-standard implementation of `JSON`. ([@ndhoule](https://github.com/ndhoule), [@boneskull](https://github.com/boneskull))
765
- - [#2286](https://github.com/mochajs/mocha/issues/2286): Fix `after()` failing to execute if test skipped using `this.skip()` in `beforeEach()`; no longer marks the entire suite as "pending". ([@dasilvacontin](https://github.com/dasilvacontin), [@boneskull](https://github.com/boneskull))
766
- - [#2208](https://github.com/mochajs/mocha/pull/2208): Fix function name display in `markdown` and `html` (browser) reporters. ([@ScottFreeCode](https://github.com/ScottFreeCode))
767
- - [#2299](https://github.com/mochajs/mocha/pull/2299): Fix progress bar in `html` (browser) reporter. ([@AviVahl](https://github.com/avivahl))
768
- - [#2307](https://github.com/mochajs/mocha/pull/2307): Fix `doc` reporter crashing when test fails. ([@jleyba](https://github.com/jleyba))
769
- - [#2323](https://github.com/mochajs/mocha/issues/2323): Ensure browser entry point (`browser-entry.js`) is published to npm (for use with bundlers). ([@boneskull](https://github.com/boneskull))
770
- - [#2310](https://github.com/mochajs/mocha/issues/2310): Ensure custom reporter with an absolute path works in Windows. ([@silentcloud](https://github.com/silentcloud))
771
- - [#2311](https://github.com/mochajs/mocha/issues/2311): Fix problem wherein calling `this.slow()` without a value would blast any previously set value. ([@boneskull](https://github.com/boneskull))
772
- - [#1813](https://github.com/mochajs/mocha/issues/1813): Ensure Mocha's own test suite will run in Windows. ([@tswaters](https://github.com/tswaters), [@TimothyGu](https://github.com/timothygu), [@boneskull](https://github.com/boneskull))
773
- - [#2317](https://github.com/mochajs/mocha/issues/2317): Ensure all interfaces are displayed in `--help` on CLI. ([@ScottFreeCode](https://github.com/ScottFreeCode))
774
- - [#1644](https://github.com/mochajs/mocha/issues/1644): Don't exhibit undefined behavior when calling `this.timeout()` with very large values ([@callumacrae](https://github.com/callumacrae), [@boneskull](https://github.com/boneskull))
775
- - [#2361](https://github.com/mochajs/mocha/pull/2361): Don't truncate name of thrown anonymous exception. ([@boneskull](https://github.com/boneskull))
776
- - [#2367](https://github.com/mochajs/mocha/pull/2367): Fix invalid CSS. ([@bensontrent](https://github.com/bensontrent))
777
- - [#2401](https://github.com/mochajs/mocha/pull/2401): Remove carriage return before each test line in spec reporter. ([@Munter](https://github.com/munter))
778
-
779
- ## :nut_and_bolt: Other
780
-
781
- - Upgrade production dependencies to address security advisories (and because now we can): `glob`, `commander`, `escape-string-regexp`, and `supports-color`. ([@boneskull](https://github.com/boneskull), [@RobLoach](https://github.com/robloach))
782
- - Add Windows to CI. ([@boneskull](https://github.com/boneskull), [@TimothyGu](https://github.com/timothygu))
783
- - Ensure appropriate `engines` field in `package.json`. ([@shinnn](https://github.com/shinnn), [@boneskull](https://github.com/boneskull))
784
- - [#2348](https://github.com/mochajs/mocha/issues/2348): Upgrade ESLint to v2 ([@anthony-redfox](https://github.com/anthony-redfox))
785
-
786
- We :heart: our [backers and sponsors](https://opencollective.com/mochajs)!
787
-
788
- :shipit:
789
-
790
- # 2.5.3 / 2016-05-25
791
-
792
- - [#2112](https://github.com/mochajs/mocha/pull/2112) - Fix HTML reporter regression causing duplicate error output ([@danielstjules](https://github.com/danielstjules) via [`6d24063`](https://github.com/mochajs/mocha/commit/6d24063))
793
- - [#2119](https://github.com/mochajs/mocha/pull/2119) - Make HTML reporter failure/passed links preventDefault to avoid SPA's hash navigation ([@jimenglish81](https://github.com/jimenglish81) via [`9e93efc`](https://github.com/mochajs/mocha/commit/9e93efc))
794
-
795
- # 2.5.2 / 2016-05-24
796
-
797
- - [#2178](https://github.com/mochajs/mocha/pull/2178) - Avoid double and triple xUnit XML escaping ([@graingert](https://github.com/graingert) via [`49b5ff1`](https://github.com/mochajs/mocha/commit/49b5ff1))
798
-
799
- # 2.5.1 / 2016-05-23
800
-
801
- - Fix [to-iso-string](https://npmjs.com/package/to-iso-string) dependency ([@boneskull](https://github.com/boneskull) via [`bd9450b`](https://github.com/mochajs/mocha/commit/bd9450b))
802
-
803
- Thanks [**@entertainyou**](https://github.com/entertainyou), [**@SimenB**](https://github.com/SimenB), [**@just-paja**](https://github.com/just-paja) for the heads-up.
804
-
805
- # 2.5.0 / 2016-05-23
806
-
807
- This has been awhile coming! We needed to feel confident that the next release wouldn't break browser compatibility (e.g. the last few patch releases).
808
-
809
- ## Browser Tests in CI
810
-
811
- We now run unit tests against PhantomJS v1.x and an assortment of browsers on [SauceLabs](https://saucelabs.com), including:
812
-
813
- - Internet Explorer v8.0
814
- - Chrome (latest)
815
- - Firefox (latest)
816
- - Safari (latest)
817
- - Microsoft Edge (latest)
818
-
819
- To accomplish this, we now run Mocha's unit tests (and a handful of integration tests) via [Karma](https://npmjs.com/package/karma) and a modified [karma-mocha](https://npmjs.com/package/karma-mocha). Along the way, we had to solve issue [#880](https://github.com/mochajs/mocha/issues/880) (apologies to [**@mderijcke**](https://github.com/mderijcke) and [**@sukima**](https://github.com/sukima) who had PRs addressing this), as well as replace most usages of [should](https://npmjs.com/package/should) with [expect.js](https://npmjs.com/package/expect.js) for IE8.
820
-
821
- Going forward, when sending PRs, your code will _only_ run against PhantomJS v1.x (and not hit SauceLabs) [because security](https://docs.travis-ci.com/user/pull-requests/#Security-Restrictions-when-testing-Pull-Requests).
822
-
823
- ## Node.js 6.x
824
-
825
- Node.js 6.x "just worked" before, but now it's in the CI matrix, so it's "officially" supported. Mocha _still retains support_ for Node.js 0.8.x.
826
-
827
- ## "Minor" Release
828
-
829
- You'll see mostly bug fixes below, but also a couple features--as such, it's a "minor" release.
830
-
831
- ## TYVM
832
-
833
- Thanks to everyone who contributed, and our fabulous [sponsors and backers](https://opencollective.com/mochajs)!
834
-
835
- - [#2079](https://github.com/mochajs/mocha/issues/2079) - Add browser checks to CI; update [browserify](https://npmjs.com/package/browserify) to v13.0.0 ([@dasilvacontin](https://github.com/dasilvacontin), [@ScottFreeCode](https://github.com/ScottFreeCode), [@boneskull](https://github.com/boneskull) via [`c04c1d7`](https://github.com/mochajs/mocha/commit/c04c1d7), [`0b1e9b3`](https://github.com/mochajs/mocha/commit/0b1e9b3), [`0dde0fa`](https://github.com/mochajs/mocha/commit/0dde0fa), [`f8a3d86`](https://github.com/mochajs/mocha/commit/f8a3d86), [`9e8cbaa`](https://github.com/mochajs/mocha/commit/9e8cbaa))
836
- - [#880](https://github.com/mochajs/mocha/issues/880) - Make Mocha browserifyable ([@boneskull](https://github.com/boneskull) via [`524862b`](https://github.com/mochajs/mocha/commit/524862b))
837
- - [#2121](https://github.com/mochajs/mocha/issues/2121) - Update [glob](https://npmjs.com/package/glob) to v3.2.11 ([@astorije](https://github.com/astorije) via [`7920fc4`](https://github.com/mochajs/mocha/commit/7920fc4))
838
- - [#2126](https://github.com/mochajs/mocha/issues/2126) - Fix dupe error messages in stack trace filter ([@Turbo87](https://github.com/Turbo87) via [`4301caa`](https://github.com/mochajs/mocha/commit/4301caa))
839
- - [#2109](https://github.com/mochajs/mocha/issues/2109) - Fix certain diffs when objects cannot be coerced into primitives ([@joshlory](https://github.com/joshlory) via [`61fbb7f`](https://github.com/mochajs/mocha/commit/61fbb7f))
840
- - [#1827](https://github.com/mochajs/mocha/pull/1827) - Fix TWBS/`mocha.css` collisions ([@irnc](https://github.com/irnc) via [`0543798`](https://github.com/mochajs/mocha/commit/0543798))
841
- - [#1760](https://github.com/mochajs/mocha/issues/1760), [#1936](https://github.com/mochajs/mocha/issues/1936) - Fix `this.skip()` in HTML reporter ([@mislav](https://github.com/mislav) via [`cb4248b`](https://github.com/mochajs/mocha/commit/cb4248b))
842
- - [#2115](https://github.com/mochajs/mocha/pull/2115) - Fix exceptions thrown from hooks in HTML reporter ([@danielstjules](https://github.com/danielstjules) via [`e290bc0`](https://github.com/mochajs/mocha/commit/e290bc0))
843
- - [#2089](https://github.com/mochajs/mocha/issues/2089) - Handle Symbol values in `util.stringify()` ([@ryym](https://github.com/ryym) via [`ea61d05`](https://github.com/mochajs/mocha/commit/ea61d05))
844
- - [#2097](https://github.com/mochajs/mocha/pull/2097) - Fix diff for objects overriding `Object.prototype.hasOwnProperty` ([@mantoni](https://github.com/mantoni) via [`b20fdfe`](https://github.com/mochajs/mocha/commit/b20fdfe))
845
- - [#2101](https://github.com/mochajs/mocha/pull/2101) - Properly handle non-string "messages" thrown from assertion libraries ([@jkimbo](https://github.com/jkimbo) via [`9c41051`](https://github.com/mochajs/mocha/commit/9c41051))
846
- - [#2124](https://github.com/mochajs/mocha/pull/2124) - Update [growl](https://npmjs.com/package/growl) ([@benjamine](https://github.com/benjamine) via [`9ae6a85`](https://github.com/mochajs/mocha/commit/9ae6a85))
847
- - [#2162](https://github.com/mochajs/mocha/pull/2162), [#2205](https://github.com/mochajs/mocha/pull/2205) - JSDoc fixes ([@OlegTsyba](https://github.com/OlegTsyba) via [`8031f20`](https://github.com/mochajs/mocha/commit/8031f20), [@ScottFreeCode](https://github.com/ScottFreeCode) via [`f83b1d9`](https://github.com/mochajs/mocha/commit/f83b1d9))
848
- - [#2132](https://github.com/mochajs/mocha/issues/2132) - Remove Growl-related cruft ([@julienw](https://github.com/julienw) via [`00d6469`](https://github.com/mochajs/mocha/commit/00d6469))
849
- - [#2172](https://github.com/mochajs/mocha/pull/2172) - Add [OpenCollective](https://opencollective.com) badge, sponsors & backers ([@xdamman](https://github.com/xdamman), [@boneskull](https://github.com/boneskull) via [`caee94f`](https://github.com/mochajs/mocha/commit/caee94f))
850
- - [#1841](https://github.com/mochajs/mocha/pull/1841) - Add new logo, banner assets ([@dasilvacontin](https://github.com/dasilvacontin) via [`00fd0e1`](https://github.com/mochajs/mocha/commit/00fd0e1))
851
- - [#2214](https://github.com/mochajs/mocha/pull/2214) - Update `README.md` header ([@dasilvacontin](https://github.com/dasilvacontin) via [`c0f9be2`](https://github.com/mochajs/mocha/commit/c0f9be2))
852
- - [#2236](https://github.com/mochajs/mocha/pull/2236) - Better checks for Node.js v0.8 compatibility in CI ([@dasilvacontin](https://github.com/dasilvacontin) via [`ba5637d`](https://github.com/mochajs/mocha/commit/ba5637d))
853
- - [#2239](https://github.com/mochajs/mocha/issues/2239) - Add Node.js v6.x to CI matrix ([@boneskull](https://github.com/boneskull) via [`3904da4`](https://github.com/mochajs/mocha/commit/3904da4))
854
-
855
- # 2.4.5 / 2016-01-28
856
-
857
- - [#2080](https://github.com/mochajs/mocha/issues/2080), [#2078](https://github.com/mochajs/mocha/issues/2078), [#2072](https://github.com/mochajs/mocha/pull/2072), [#2073](https://github.com/mochajs/mocha/pull/2073), [#1200](https://github.com/mochajs/mocha/issues/1200) - Revert changes to console colors in changeset [1192914](https://github.com/mochajs/mocha/commit/119291449cd03a11cdeda9e37cf718a69a012896) and subsequent related changes thereafter. Restores compatibility with IE8 & PhantomJS. See also [mantoni/mochify.js#129](https://github.com/mantoni/mochify.js/issues/129) and [openlayers/ol3#4746](https://github.com/openlayers/ol3/pull/4746) ([@boneskull](https://github.com/boneskull))
858
- - [#2082](https://github.com/mochajs/mocha/pull/2082) - Fix several test assertions ([@mislav](https://github.com/mislav))
859
-
860
- # 2.4.4 / 2016-01-27
861
-
862
- - [#2080](https://github.com/mochajs/mocha/issues/2080) - Fix broken RequireJS compatibility ([@boneskull](https://github.com/boneskull))
863
-
864
- # 2.4.3 / 2016-01-27
865
-
866
- - [#2078](https://github.com/mochajs/mocha/issues/2078) - Fix broken IE8 ([@boneskull](https://github.com/boneskull))
867
-
868
- # 2.4.2 / 2016-01-26
869
-
870
- - [#2053](https://github.com/mochajs/mocha/pull/2053) - Fix web worker compatibility ([@mislav](https://github.com/mislav))
871
- - [#2072](https://github.com/mochajs/mocha/pull/2072) - Fix Windows color output ([@thedark1337](https://github.com/thedark1337))
872
- - [#2073](https://github.com/mochajs/mocha/pull/2073) - Fix colors in `progress` and `landing` reporters ([@gyandeeps](https://github.com/gyandeeps))
873
-
874
- # 2.4.1 / 2016-01-26
875
-
876
- - [#2067](https://github.com/mochajs/mocha/pull/2067) - Fix HTML/doc reporter regressions ([@danielstjules](https://github.com/danielstjules))
877
-
878
- # 2.4.0 / 2016-01-25
879
-
880
- - [#1945](https://github.com/mochajs/mocha/pull/1945) - Correctly skip tests when skipping in suite's before() ([@ryanshawty](https://github.com/ryanshawty))
881
- - [#2056](https://github.com/mochajs/mocha/pull/2056) - chore(license): update license year to 2016 ([@pra85](https://github.com/pra85))
882
- - [#2048](https://github.com/mochajs/mocha/pull/2048) - Fix `this.skip` from spec with HTML reporter ([@mislav](https://github.com/mislav))
883
- - [#2033](https://github.com/mochajs/mocha/pull/2033) - Update tests for newer versions of should.js ([@tomhughes](https://github.com/tomhughes))
884
- - [#2037](https://github.com/mochajs/mocha/pull/2037) - Fix for memory leak caused by referenced to deferred test ([@bd82](https://github.com/bd82))
885
- - [#2038](https://github.com/mochajs/mocha/pull/2038) - Also run Travis-CI on node.js 4 & 5 ([@bd82](https://github.com/bd82))
886
- - [#2028](https://github.com/mochajs/mocha/pull/2028) - Remove reference to test before afterAll hook runs ([@stonelgh](https://github.com/stonelgh))
887
- - Bump mkdirp to 0.5.1 to support strict mode ([@danielstjules](https://github.com/danielstjules))
888
- - [#1977](https://github.com/mochajs/mocha/pull/1977) - safely stringify PhantomJS undefined value ([@ahamid](https://github.com/ahamid))
889
- - Add the ability to retry tests ([@@longlho])
890
- - [#1982](https://github.com/mochajs/mocha/pull/1982) - Enable --log-timer-events option [@Alaneor](https://github.com/Alaneor)
891
- - Fix [#1980](https://github.com/mochajs/mocha/issues/1980): Load mocha.opts from bin/mocha and bin/\_mocha ([@danielstjules](https://github.com/danielstjules))
892
- - [#1976](https://github.com/mochajs/mocha/pull/1976) - Simplify function call ([@iclanzan](https://github.com/iclanzan))
893
- - [#1963](https://github.com/mochajs/mocha/pull/1963) - Add support --perf-basic-prof ([@robraux](https://github.com/robraux))
894
- - [#1981](https://github.com/mochajs/mocha/pull/1981) - Fix HTML reporter handling of done and exceptions ([@Standard8](https://github.com/Standard8))
895
- - [#1993](https://github.com/mochajs/mocha/pull/1993) - propagate "file" property for "exports" interface ([@segrey](https://github.com/segrey))
896
- - [#1999](https://github.com/mochajs/mocha/pull/1999) - Add support for strict mode ([@tmont](https://github.com/tmont))
897
- - [#2005](https://github.com/mochajs/mocha/pull/2005) - XUnit Reporter Writes to stdout, falls back to console.log ([@jonnyreeves](https://github.com/jonnyreeves))
898
- - [#2021](https://github.com/mochajs/mocha/pull/2021) - Fix non ES5 compliant regexp ([@zetaben](https://github.com/zetaben))
899
- - [#1965] - Don't double install BDD UI ([@cowboyd](https://github.com/cowboyd))
900
- - [#1995](https://github.com/mochajs/mocha/pull/1995) - Make sure the xunit output dir exists before writing to it ([@ianwremmel](https://github.com/ianwremmel))
901
- - Use chalk for the base reporter colors; closes [#1200](https://github.com/mochajs/mocha/issues/1200) ([@boneskull](https://github.com/boneskull))
902
- - Fix requiring custom interfaces ([@jgkim](https://github.com/jgkim))
903
- - [#1967](https://github.com/mochajs/mocha/pull/1967) Silence Bluebird js warnings ([@krisr](https://github.com/krisr))
904
-
905
- # 2.3.4 / 2015-11-15
906
-
907
- - Update debug dependency to 2.2.0
908
- - remove duplication of mocha.opts on process.argv
909
- - Fix typo in test/reporters/nyan.js
910
-
911
- # 2.3.3 / 2015-09-19
912
-
913
- - [#1875](https://github.com/mochajs/mocha/issues/1875) - Fix Markdown reporter exceeds maximum call stack size ([@danielstjules](https://github.com/danielstjules))
914
- - [#1864](https://github.com/mochajs/mocha/issues/1864) - Fix xunit missing output with --reporter-options output ([@danielstjules](https://github.com/danielstjules))
915
- - [#1846](https://github.com/mochajs/mocha/issues/1846) - Support all harmony flags ([@danielstjules](https://github.com/danielstjules))
916
- - Fix fragile xunit reporter spec ([@danielstjules](https://github.com/danielstjules))
917
- - [#1669](https://github.com/mochajs/mocha/issues/1669) - Fix catch uncaught errors outside test suite execution ([@danielstjules](https://github.com/danielstjules))
918
- - [#1868](https://github.com/mochajs/mocha/issues/1868) - Revert jade to support npm < v1.3.7 ([@danielstjules](https://github.com/danielstjules))
919
- - [#1766](https://github.com/mochajs/mocha/issues/1766) - Don't remove modules/components from stack trace in the browser ([@danielstjules](https://github.com/danielstjules))
920
- - [#1798](https://github.com/mochajs/mocha/issues/1798) - Fix correctly attribute mutiple done err with hooks ([@danielstjules](https://github.com/danielstjules))
921
- - Fix use utils.reduce for IE8 compatibility ([@wsw0108](https://github.com/wsw0108))
922
- - Some linting errors fixed by [@danielstjules](https://github.com/danielstjules)
923
- - Call the inspect() function if message is not set ([@kevinburke](https://github.com/kevinburke))
924
-
925
- # 2.3.2 / 2015-09-07
926
-
927
- - [#1868](https://github.com/mochajs/mocha/issues/1868) - Fix compatibility with older versions of NPM ([@boneskull](https://github.com/boneskull))
928
-
929
- # 2.3.1 / 2015-09-06
930
-
931
- - [#1812](https://github.com/mochajs/mocha/issues/1812) - Fix: Bail flag causes before() hooks to be run even after a failure ([@aaroncrows])
932
-
933
- # 2.3.0 / 2015-08-30
934
-
935
- - [#553](https://github.com/mochajs/mocha/issues/553) - added --allowUncaught option ([@amsul](https://github.com/amsul))
936
- - [#1490](https://github.com/mochajs/mocha/issues/1490) - Allow --async-only to be satisfied by returning a promise ([@jlai](https://github.com/jlai))
937
- - [#1829](https://github.com/mochajs/mocha/issues/1829) - support --max-old-space-size ([@gigadude](https://github.com/gigadude))
938
- - [#1811](https://github.com/mochajs/mocha/issues/1811) - upgrade Jade dependency ([@outsideris](https://github.com/outsideris))
939
- - [#1769](https://github.com/mochajs/mocha/issues/1769) - Fix async hook error handling ([@ajaykodali](https://github.com/ajaykodali))
940
- - [#1230](https://github.com/mochajs/mocha/issues/1230) - More descriptive beforeEach/afterEach messages ([@duncanbeevers](https://github.com/duncanbeevers))
941
- - [#1787](https://github.com/mochajs/mocha/issues/1787) - Scope loading behaviour instead of using early return ([@aryeguy](https://github.com/aryeguy))
942
- - [#1789](https://github.com/mochajs/mocha/issues/1789) - Fix: html-runner crashing ([@sunesimonsen](https://github.com/sunesimonsen))
943
- - [#1749](https://github.com/mochajs/mocha/issues/1749) - Fix maximum call stack error on large amount of tests ([@tinganho](https://github.com/tinganho))
944
- - [#1230](https://github.com/mochajs/mocha/issues/1230) - Decorate failed hook titles with test title ([@duncanbeevers](https://github.com/duncanbeevers))
945
- - [#1260](https://github.com/mochajs/mocha/issues/1260) - Build using Browserify ([@ndhoule](https://github.com/ndhoule))
946
- - [#1728](https://github.com/mochajs/mocha/issues/1728) - Don't use `__proto__` ([@ndhoule](https://github.com/ndhoule))
947
- - [#1781](https://github.com/mochajs/mocha/issues/1781) - Fix hook error tests ([@glenjamin](https://github.com/glenjamin))
948
- - [#1754](https://github.com/mochajs/mocha/issues/1754) - Allow boolean --reporter-options ([@papandreou](https://github.com/papandreou))
949
- - [#1766](https://github.com/mochajs/mocha/issues/1766) - Fix overly aggressive stack suppression ([@moll](https://github.com/moll))
950
- - [#1752](https://github.com/mochajs/mocha/issues/1752) - Avoid potential infinite loop ([@gsilk](https://github.com/gsilk))
951
- - [#1761](https://github.com/mochajs/mocha/issues/1761) - Fix problems running under PhantomJS ([@chromakode](https://github.com/chromakode))
952
- - [#1700](https://github.com/mochajs/mocha/issues/1700) - Fix more problems running under PhantomJS ([@jbnicolai](https://github.com/jbnicolai))
953
- - [#1774](https://github.com/mochajs/mocha/issues/1774) - Support escaped spaces in CLI options ([@adamgruber](https://github.com/adamgruber))
954
- - [#1687](https://github.com/mochajs/mocha/issues/1687) - Fix HTML reporter links with special chars ([@benvinegar](https://github.com/benvinegar))
955
- - [#1359](https://github.com/mochajs/mocha/issues/1359) - Adopt code style and enforce it using ESLint ([@ndhoule](https://github.com/ndhoule) w/ assist from [@jbnicolai](https://github.com/jbnicolai) & [@boneskull](https://github.com/boneskull))
956
- - various refactors ([@jbnicolai](https://github.com/jbnicolai))
957
- - [#1758](https://github.com/mochajs/mocha/issues/1758) - Add cross-frame compatible Error checking ([@outdooricon](https://github.com/outdooricon))
958
- - [#1741](https://github.com/mochajs/mocha/issues/1741) - Remove moot `version` property from bower.json ([@kkirsche](https://github.com/kkirsche))
959
- - [#1739](https://github.com/mochajs/mocha/issues/1739) - Improve `HISTORY.md` ([@rstacruz](https://github.com/rstacruz))
960
- - [#1730](https://github.com/mochajs/mocha/issues/1730) - Support more io.js flags ([@ryedog](https://github.com/ryedog))
961
- - [#1349](https://github.com/mochajs/mocha/issues/1349) - Allow HTML in HTML reporter errors ([@papandreou](https://github.com/papandreou) / [@sunesimonsen](https://github.com/sunesimonsen))
962
- - [#1572](https://github.com/mochajs/mocha/issues/1572) - Prevent default browser behavior for failure/pass links ([@jschilli](https://github.com/jschilli))
963
- - [#1630](https://github.com/mochajs/mocha/issues/1630) - Support underscored harmony flags ([@dominicbarnes](https://github.com/dominicbarnes))
964
- - [#1718](https://github.com/mochajs/mocha/issues/1718) - Support more harmony flags ([@slyg](https://github.com/slyg))
965
- - [#1689](https://github.com/mochajs/mocha/issues/1689) - Add stack to JSON-stream reporter ([@jonathandelgado](https://github.com/jonathandelgado))
966
- - [#1654](https://github.com/mochajs/mocha/issues/1654) - Fix `ReferenceError` "location is not defined" ([@jakemmarsh](https://github.com/jakemmarsh))
967
-
968
- # 2.2.5 / 2015-05-14
969
-
970
- - [#1699](https://github.com/mochajs/mocha/issues/1699) - Upgrade jsdiff to v1.4.0 ([@nylen](https://github.com/nylen))
971
- - [#1648](https://github.com/mochajs/mocha/issues/1648) - fix diff background colors in the console ([@nylen](https://github.com/nylen))
972
- - [#1327](https://github.com/mochajs/mocha/issues/1327) - fix tests running twice, a regression issue. ([#1686](https://github.com/mochajs/mocha/issues/1686), [@danielstjules](https://github.com/danielstjules))
973
- - [#1675](https://github.com/mochajs/mocha/issues/1675) - add integration tests ([@danielstjules](https://github.com/danielstjules))
974
- - [#1682](https://github.com/mochajs/mocha/issues/1682) - use a valid SPDX license identifier in package.json ([@kemitchell](https://github.com/kemitchell))
975
- - [#1660](https://github.com/mochajs/mocha/issues/1660) - fix assertion of invalid dates ([#1661](https://github.com/mochajs/mocha/issues/1661), [@a8m](https://github.com/a8m))
976
- - [#1241](https://github.com/mochajs/mocha/issues/1241) - fix issue with multiline diffs appearing as single line ([#1655](https://github.com/mochajs/mocha/issues/1655), [@a8m](https://github.com/a8m))
977
-
978
- # 2.2.4 / 2015-04-08
979
-
980
- - Load mocha.opts in \_mocha for now (close [#1645](https://github.com/mochajs/mocha/issues/1645))
981
-
982
- # 2.2.3 / 2015-04-07
983
-
984
- - fix(reporter/base): string diff - issue [#1241](https://github.com/mochajs/mocha/issues/1241)
985
- - fix(reporter/base): string diff - issue [#1241](https://github.com/mochajs/mocha/issues/1241)
986
- - fix(reporter/base): don't show diffs for errors without expectation
987
- - fix(reporter/base): don't assume error message is first line of stack
988
- - improve: dry up reporter/base test
989
- - fix(reporter/base): explicitly ignore showDiff [#1614](https://github.com/mochajs/mocha/issues/1614)
990
- - Add iojs to travis build
991
- - Pass `--allow-natives-syntax` flag to node.
992
- - Support --harmony_classes flag for io.js
993
- - Fix 1556: Update utils.clean to handle newlines in func declarations
994
- - Fix 1606: fix err handling in IE <= 8 and non-ES5 browsers
995
- - Fix 1585: make \_mocha executable again
996
- - chore(package.json): add a8m as a contributor
997
- - Fixed broken link on html-cov reporter
998
- - support --es_staging flag
999
- - fix issue where menu overlaps content.
1000
- - update contributors in package.json
1001
- - Remove trailing whitespace from reporter output
1002
- - Remove contributors list from readme
1003
- - log third-party reporter errors
1004
- - [Fix] Exclude not own properties when looping on options
1005
- - fix: support node args in mocha.opts (close [#1573](https://github.com/mochajs/mocha/issues/1573))
1006
- - fix(reporter/base): string diff - issue [#1241](https://github.com/mochajs/mocha/issues/1241)
1007
-
1008
- # 2.2.1 / 2015-03-09
1009
-
1010
- - Fix passing of args intended for node/iojs.
1011
-
1012
- # 2.2.0 / 2015-03-06
1013
-
1014
- - Update mocha.js
1015
- - Add --fgrep. Use grep for RegExp, fgrep for str
1016
- - Ignore async global errors after spec resolution
1017
- - Fixing errors that prevent mocha.js from loading in the browser - fixes [#1558](https://github.com/mochajs/mocha/issues/1558)
1018
- - fix(utils): issue [#1558](https://github.com/mochajs/mocha/issues/1558) + make
1019
- - add ability to delay root suite; closes [#362](https://github.com/mochajs/mocha/issues/362), closes [#1124](https://github.com/mochajs/mocha/issues/1124)
1020
- - fix insanity in http tests
1021
- - update travis: add node 0.12, add gitter, remove slack
1022
- - building
1023
- - resolve [#1548](https://github.com/mochajs/mocha/issues/1548): ensure the environment's "node" executable is used
1024
- - reporters/base: use supports-color to detect colorable term
1025
- - travis: use docker containers
1026
- - small fix: commander option for --expose-gc
1027
- - Ignore asynchronous errors after global failure
1028
- - Improve error output when a test fails with a non-error
1029
- - updated travis badge, uses svg instead of img
1030
- - Allow skip from test context for [#332](https://github.com/mochajs/mocha/issues/332)
1031
- - [JSHINT] Unnecessary semicolon fixed in bin/\_mocha
1032
- - Added a reminder about the done() callback to test timeout error messages
1033
- - fixes [#1496](https://github.com/mochajs/mocha/issues/1496), in Mocha.run(fn), check if fn exists before executing it, added tests too
1034
- - Add Harmony Proxy flag for iojs
1035
- - test(utils|ms|\*): test existing units
1036
- - add support for some iojs flags
1037
- - fix(utils.stringify): issue [#1229](https://github.com/mochajs/mocha/issues/1229), diff viewer
1038
- - Remove slack link
1039
- - Prevent multiple 'grep=' querystring params in html reporter
1040
- - Use grep as regexp (close [#1381](https://github.com/mochajs/mocha/issues/1381))
1041
- - utils.stringify should handle objects without an Object prototype
1042
- - in runnable test, comparing to undefined error's message rather than a literal
1043
- - Fix test running output truncation on async STDIO
1044
- - amended for deprecated customFds option in child_process
1045
-
1046
- # 2.1.0 / 2014-12-23
1047
-
1048
- - showDiff: don’t stringify strings
1049
- - Clean up unused module dependencies.
1050
- - Filter zero-length strings from mocha.opts
1051
- - only write to stdout in reporters
1052
- - Revert "only write to stdout in reporters"
1053
- - Print colored output only to a tty
1054
- - update summary in README.md
1055
- - rename Readme.md/History.md to README.md/HISTORY.md because neurotic
1056
- - add .mailmap to fix "git shortlog" or "git summary" output
1057
- - fixes [#1461](https://github.com/mochajs/mocha/issues/1461): nyan-reporter now respects Base.useColors, fixed bug where Base.color would not return a string when str wasn't a string.
1058
- - Use existing test URL builder in failed replay links
1059
- - modify .travis.yml: use travis_retry; closes [#1449](https://github.com/mochajs/mocha/issues/1449)
1060
- - fix -t 0 behavior; closes [#1446](https://github.com/mochajs/mocha/issues/1446)
1061
- - fix tests (whoops)
1062
- - improve diff behavior
1063
- - Preserve pathname when linking to individual tests
1064
- - Fix test
1065
- - Tiny typo in comments fixed
1066
- - after hooks now being called on failed tests when using bail, fixes [#1093](https://github.com/mochajs/mocha/issues/1093)
1067
- - fix throwing undefined/null now makes tests fail, fixes [#1395](https://github.com/mochajs/mocha/issues/1395)
1068
- - compiler extensions are added as watched extensions, removed non-standard extensions from watch regex, resolves [#1221](https://github.com/mochajs/mocha/issues/1221)
1069
- - prefix/namespace for suite titles in markdown reporter, fixes [#554](https://github.com/mochajs/mocha/issues/554)
1070
- - fix more bad markdown in CONTRIBUTING.md
1071
- - fix bad markdown in CONTRIBUTING.md
1072
- - add setImmediate/clearImmediate to globals; closes [#1435](https://github.com/mochajs/mocha/issues/1435)
1073
- - Fix buffer diffs (closes [#1132](https://github.com/mochajs/mocha/issues/1132), closes [#1433](https://github.com/mochajs/mocha/issues/1433))
1074
- - add a CONTRIBUTING.md. closes [#882](https://github.com/mochajs/mocha/issues/882)
1075
- - fix intermittent build failures (maybe). closes [#1407](https://github.com/mochajs/mocha/issues/1407)
1076
- - add Slack notification to .travis.yml
1077
- - Fix slack link
1078
- - Add slack room to readme
1079
- - Update maintainers
1080
- - update maintainers and contributors
1081
- - resolves [#1393](https://github.com/mochajs/mocha/issues/1393): kill children with more effort on SIGINT
1082
- - xunit reporter support for optionally writing to a file
1083
- - if a reporter has a .done method, call it before exiting
1084
- - add support for reporter options
1085
- - only write to stdout in reporters
1086
-
1087
- # 2.0.0 / 2014-10-21
1088
-
1089
- - remove: support for node 0.6.x, 0.4.x
1090
- - fix: landing reporter with non ansi characters ([#211](https://github.com/mochajs/mocha/issues/211))
1091
- - fix: html reporter - preserve query params when navigating to suites/tests ([#1358](https://github.com/mochajs/mocha/issues/1358))
1092
- - fix: json stream reporter add error message to failed test
1093
- - fix: fixes for visionmedia -> mochajs
1094
- - fix: use stdio, fixes node deprecation warnings ([#1391](https://github.com/mochajs/mocha/issues/1391))
1095
-
1096
- # 1.21.5 / 2014-10-11
1097
-
1098
- - fix: build for NodeJS v0.6.x
1099
- - fix: do not attempt to highlight syntax when non-HTML reporter is used
1100
- - update: escape-string-regexp to 1.0.2.
1101
- - fix: botched indentation in canonicalize()
1102
- - fix: .gitignore: ignore .patch and .diff files
1103
- - fix: changed 'Catched' to 'Caught' in uncaught exception error handler messages
1104
- - add: `pending` field for json reporter
1105
- - fix: Runner.prototype.uncaught: don't double-end runnables that already have a state.
1106
- - fix: --recursive, broken by [`f0facd2`](https://github.com/mochajs/mocha/commit/f0facd2e)
1107
- - update: replaces escapeRegexp with the escape-string-regexp package.
1108
- - update: commander to 2.3.0.
1109
- - update: diff to 1.0.8.
1110
- - fix: ability to disable syntax highlighting ([#1329](https://github.com/mochajs/mocha/issues/1329))
1111
- - fix: added empty object to errorJSON() call to catch when no error is present
1112
- - fix: never time out after calling enableTimeouts(false)
1113
- - fix: timeout(0) will work at suite level ([#1300](https://github.com/mochajs/mocha/issues/1300))
1114
- - Fix for --watch+only() issue ([#888](https://github.com/mochajs/mocha/issues/888) )
1115
- - fix: respect err.showDiff, add Base reporter test ([#810](https://github.com/mochajs/mocha/issues/810))
1116
-
1117
- # 1.22.1-3 / 2014-07-27
1118
-
1119
- - fix: disabling timeouts with this.timeout(0) ([#1301](https://github.com/mochajs/mocha/issues/1301))
1120
-
1121
- # 1.22.1-3 / 2014-07-27
1122
-
1123
- - fix: local uis and reporters ([#1288](https://github.com/mochajs/mocha/issues/1288))
1124
- - fix: building 1.21.0's changes in the browser ([#1284](https://github.com/mochajs/mocha/issues/1284))
1125
-
1126
- # 1.21.0 / 2014-07-23
1127
-
1128
- - add: --no-timeouts option ([#1262](https://github.com/mochajs/mocha/issues/1262), [#1268](https://github.com/mochajs/mocha/issues/1268))
1129
- - add: --\*- deprecation node flags ([#1217](https://github.com/mochajs/mocha/issues/1217))
1130
- - add: --watch-extensions argument ([#1247](https://github.com/mochajs/mocha/issues/1247))
1131
- - change: spec reporter is default ([#1228](https://github.com/mochajs/mocha/issues/1228))
1132
- - fix: diff output showing incorrect +/- ([#1182](https://github.com/mochajs/mocha/issues/1182))
1133
- - fix: diffs of circular structures ([#1179](https://github.com/mochajs/mocha/issues/1179))
1134
- - fix: re-render the progress bar when progress has changed only ([#1151](https://github.com/mochajs/mocha/issues/1151))
1135
- - fix support for environments with global and window ([#1159](https://github.com/mochajs/mocha/issues/1159))
1136
- - fix: reverting to previously defined onerror handler ([#1178](https://github.com/mochajs/mocha/issues/1178))
1137
- - fix: stringify non error objects passed to done() ([#1270](https://github.com/mochajs/mocha/issues/1270))
1138
- - fix: using local ui, reporters ([#1267](https://github.com/mochajs/mocha/issues/1267))
1139
- - fix: cleaning es6 arrows ([#1176](https://github.com/mochajs/mocha/issues/1176))
1140
- - fix: don't include attrs in failure tag for xunit ([#1244](https://github.com/mochajs/mocha/issues/1244))
1141
- - fix: fail tests that return a promise if promise is rejected w/o a reason ([#1224](https://github.com/mochajs/mocha/issues/1224))
1142
- - fix: showing failed tests in doc reporter ([#1117](https://github.com/mochajs/mocha/issues/1117))
1143
- - fix: dot reporter dots being off ([#1204](https://github.com/mochajs/mocha/issues/1204))
1144
- - fix: catch empty throws ([#1219](https://github.com/mochajs/mocha/issues/1219))
1145
- - fix: honoring timeout for sync operations ([#1242](https://github.com/mochajs/mocha/issues/1242))
1146
- - update: growl to 1.8.0
1147
-
1148
- # 1.20.1 / 2014-06-03
1149
-
1150
- - update: should dev dependency to ~4.0.0 ([#1231](https://github.com/mochajs/mocha/issues/1231))
1151
-
1152
- # 1.20.0 / 2014-05-28
1153
-
1154
- - add: filenames to suite objects ([#1222](https://github.com/mochajs/mocha/issues/1222))
1155
-
1156
- # 1.19.0 / 2014-05-17
1157
-
1158
- - add: browser script option to package.json
1159
- - add: export file in Mocha.Test objects ([#1174](https://github.com/mochajs/mocha/issues/1174))
1160
- - add: add docs for wrapped node flags
1161
- - fix: mocha.run() to return error status in browser ([#1216](https://github.com/mochajs/mocha/issues/1216))
1162
- - fix: clean() to show failure details ([#1205](https://github.com/mochajs/mocha/issues/1205))
1163
- - fix: regex that generates html for new keyword ([#1201](https://github.com/mochajs/mocha/issues/1201))
1164
- - fix: sibling suites have inherited but separate contexts ([#1164](https://github.com/mochajs/mocha/issues/1164))
1165
-
1166
- # 1.18.2 / 2014-03-18
1167
-
1168
- - fix: html runner was prevented from using #mocha as the default root el ([#1162](https://github.com/mochajs/mocha/issues/1162))
1169
-
1170
- # 1.18.1 / 2014-03-18
1171
-
1172
- - fix: named before/after hooks in bdd, tdd, qunit interfaces ([#1161](https://github.com/mochajs/mocha/issues/1161))
1173
-
1174
- # 1.18.0 / 2014-03-13
1175
-
1176
- - add: promise support ([#329](https://github.com/mochajs/mocha/issues/329))
1177
- - add: named before/after hooks ([#966](https://github.com/mochajs/mocha/issues/966))
1178
-
1179
- # 1.17.1 / 2014-01-22
1180
-
1181
- - fix: expected messages in should.js (should.js#168)
1182
- - fix: expect errno global in node versions < v0.9.11 ([#1111](https://github.com/mochajs/mocha/issues/1111))
1183
- - fix: unreliable checkGlobals optimization ([#1110](https://github.com/mochajs/mocha/issues/1110))
1184
-
1185
- # 1.17.0 / 2014-01-09
1186
-
1187
- - add: able to require globals (describe, it, etc.) through mocha ([#1077](https://github.com/mochajs/mocha/issues/1077))
1188
- - fix: abort previous run on --watch change ([#1100](https://github.com/mochajs/mocha/issues/1100))
1189
- - fix: reset context for each --watch triggered run ([#1099](https://github.com/mochajs/mocha/issues/1099))
1190
- - fix: error when cli can't resolve path or pattern ([#799](https://github.com/mochajs/mocha/issues/799))
1191
- - fix: canonicalize objects before stringifying and diffing them ([#1079](https://github.com/mochajs/mocha/issues/1079))
1192
- - fix: make CR call behave like carriage return for non tty ([#1087](https://github.com/mochajs/mocha/issues/1087))
1193
-
1194
- # 1.16.2 / 2013-12-23
1195
-
1196
- - fix: couple issues with ie 8 ([#1082](https://github.com/mochajs/mocha/issues/1082), [#1081](https://github.com/mochajs/mocha/issues/1081))
1197
- - fix: issue running the xunit reporter in browsers ([#1068](https://github.com/mochajs/mocha/issues/1068))
1198
- - fix: issue with firefox < 3.5 ([#725](https://github.com/mochajs/mocha/issues/725))
1199
-
1200
- # 1.16.1 / 2013-12-19
1201
-
1202
- - fix: recompiled for missed changes from the last release
1203
-
1204
- # 1.16.0 / 2013-12-19
1205
-
1206
- - add: Runnable.globals(arr) for per test global whitelist ([#1046](https://github.com/mochajs/mocha/issues/1046))
1207
- - add: mocha.throwError(err) for assertion libs to call ([#985](https://github.com/mochajs/mocha/issues/985))
1208
- - remove: --watch's spinner ([#806](https://github.com/mochajs/mocha/issues/806))
1209
- - fix: duplicate test output for multi-line specs in spec reporter ([#1006](https://github.com/mochajs/mocha/issues/1006))
1210
- - fix: gracefully exit on SIGINT ([#1063](https://github.com/mochajs/mocha/issues/1063))
1211
- - fix expose the specified ui only in the browser ([#984](https://github.com/mochajs/mocha/issues/984))
1212
- - fix: ensure process exit code is preserved when using --no-exit ([#1059](https://github.com/mochajs/mocha/issues/1059))
1213
- - fix: return true from window.onerror handler ([#868](https://github.com/mochajs/mocha/issues/868))
1214
- - fix: xunit reporter to use process.stdout.write ([#1068](https://github.com/mochajs/mocha/issues/1068))
1215
- - fix: utils.clean(str) indentation ([#761](https://github.com/mochajs/mocha/issues/761))
1216
- - fix: xunit reporter returning test duration a NaN ([#1039](https://github.com/mochajs/mocha/issues/1039))
1217
-
1218
- # 1.15.1 / 2013-12-03
1219
-
1220
- - fix: recompiled for missed changes from the last release
1221
-
1222
- # 1.15.0 / 2013-12-02
1223
-
1224
- - add: `--no-exit` to prevent `process.exit()` ([#1018](https://github.com/mochajs/mocha/issues/1018))
1225
- - fix: using inline diffs ([#1044](https://github.com/mochajs/mocha/issues/1044))
1226
- - fix: show pending test details in xunit reporter ([#1051](https://github.com/mochajs/mocha/issues/1051))
1227
- - fix: faster global leak detection ([#1024](https://github.com/mochajs/mocha/issues/1024))
1228
- - fix: yui compression ([#1035](https://github.com/mochajs/mocha/issues/1035))
1229
- - fix: wrapping long lines in test results ([#1030](https://github.com/mochajs/mocha/issues/1030), [#1031](https://github.com/mochajs/mocha/issues/1031))
1230
- - fix: handle errors in hooks ([#1043](https://github.com/mochajs/mocha/issues/1043))
1231
-
1232
- # 1.14.0 / 2013-11-02
1233
-
1234
- - add: unified diff ([#862](https://github.com/mochajs/mocha/issues/862))
1235
- - add: set MOCHA_COLORS env var to use colors ([#965](https://github.com/mochajs/mocha/issues/965))
1236
- - add: able to override tests links in html reporters ([#776](https://github.com/mochajs/mocha/issues/776))
1237
- - remove: teamcity reporter ([#954](https://github.com/mochajs/mocha/issues/954))
1238
- - update: commander dependency to 2.0.0 ([#1010](https://github.com/mochajs/mocha/issues/1010))
1239
- - fix: mocha --ui will try to require the ui if not built in, as --reporter does ([#1022](https://github.com/mochajs/mocha/issues/1022))
1240
- - fix: send cursor commands only if isatty ([#184](https://github.com/mochajs/mocha/issues/184), [#1003](https://github.com/mochajs/mocha/issues/1003))
1241
- - fix: include assertion message in base reporter ([#993](https://github.com/mochajs/mocha/issues/993), [#991](https://github.com/mochajs/mocha/issues/991))
1242
- - fix: consistent return of it, it.only, and describe, describe.only ([#840](https://github.com/mochajs/mocha/issues/840))
1243
-
1244
- # 1.13.0 / 2013-09-15
1245
-
1246
- - add: sort test files with --sort ([#813](https://github.com/mochajs/mocha/issues/813))
1247
- - update: diff dependency to 1.0.7
1248
- - update: glob dependency to 3.2.3 ([#927](https://github.com/mochajs/mocha/issues/927))
1249
- - fix: diffs show whitespace differences ([#976](https://github.com/mochajs/mocha/issues/976))
1250
- - fix: improve global leaks ([#783](https://github.com/mochajs/mocha/issues/783))
1251
- - fix: firefox window.getInterface leak
1252
- - fix: accessing iframe via window[iframeIndex] leak
1253
- - fix: faster global leak checking
1254
- - fix: reporter pending css selector ([#970](https://github.com/mochajs/mocha/issues/970))
1255
-
1256
- # 1.12.1 / 2013-08-29
1257
-
1258
- - remove test.js from .gitignore
1259
- - update included version of ms.js
1260
-
1261
- # 1.12.0 / 2013-07-01
1262
-
1263
- - add: prevent diffs for differing types. Closes [#900](https://github.com/mochajs/mocha/issues/900)
1264
- - add `Mocha.process` hack for phantomjs
1265
- - fix: use compilers with requires
1266
- - fix regexps in diffs. Closes [#890](https://github.com/mochajs/mocha/issues/890)
1267
- - fix xunit NaN on failure. Closes [#894](https://github.com/mochajs/mocha/issues/894)
1268
- - fix: strip tab indentation in `clean` utility method
1269
- - fix: textmate bundle installation
1270
-
1271
- # 1.11.0 / 2013-06-12
1272
-
1273
- - add --prof support
1274
- - add --harmony support
1275
- - add --harmony-generators support
1276
- - add "Uncaught " prefix to uncaught exceptions
1277
- - add web workers support
1278
- - add `suite.skip()`
1279
- - change to output # of pending / passing even on failures. Closes [#872](https://github.com/mochajs/mocha/issues/872)
1280
- - fix: prevent hooks from being called if we are bailing
1281
- - fix `this.timeout(0)`
1282
-
1283
- # 1.10.0 / 2013-05-21
1284
-
1285
- - add add better globbing support for windows via `glob` module
1286
- - add support to pass through flags such as --debug-brk=1234. Closes [#852](https://github.com/mochajs/mocha/issues/852)
1287
- - add test.only, test.skip to qunit interface
1288
- - change to always use word-based diffs for now. Closes [#733](https://github.com/mochajs/mocha/issues/733)
1289
- - change `mocha init` tests.html to index.html
1290
- - fix `process` global leak in the browser
1291
- - fix: use resolve() instead of join() for --require
1292
- - fix: filterLeaks() condition to not consider indices in global object as leaks
1293
- - fix: restrict mocha.css styling to #mocha id
1294
- - fix: save timer references to avoid Sinon interfering in the browser build.
1295
-
1296
- # 1.9.0 / 2013-04-03
1297
-
1298
- - add improved setImmediate implementation
1299
- - replace --ignore-leaks with --check-leaks
1300
- - change default of ignoreLeaks to true. Closes [#791](https://github.com/mochajs/mocha/issues/791)
1301
- - remove scrolling for HTML reporter
1302
- - fix retina support
1303
- - fix tmbundle, restrict to js scope
1304
-
1305
- # 1.8.2 / 2013-03-11
1306
-
1307
- - add `setImmediate` support for 0.10.x
1308
- - fix mocha -w spinner on windows
1309
-
1310
- # 1.8.1 / 2013-01-09
1311
-
1312
- - fix .bail() arity check causing it to default to true
1313
-
1314
- # 1.8.0 / 2013-01-08
1315
-
1316
- - add Mocha() options bail support
1317
- - add `Mocha#bail()` method
1318
- - add instanceof check back for inheriting from Error
1319
- - add component.json
1320
- - add diff.js to browser build
1321
- - update growl
1322
- - fix TAP reporter failures comment :D
1323
-
1324
- # 1.7.4 / 2012-12-06
1325
-
1326
- - add total number of passes and failures to TAP
1327
- - remove .bind() calls. re [#680](https://github.com/mochajs/mocha/issues/680)
1328
- - fix indexOf. Closes [#680](https://github.com/mochajs/mocha/issues/680)
1329
-
1330
- # 1.7.3 / 2012-11-30
1331
-
1332
- - fix uncaught error support for the browser
1333
- - revert uncaught "fix" which breaks node
1334
-
1335
- # 1.7.2 / 2012-11-28
1336
-
1337
- - fix uncaught errors to expose the original error message
1338
-
1339
- # 1.7.0 / 2012-11-07
1340
-
1341
- - add `--async-only` support to prevent false positives for missing `done()`
1342
- - add sorting by filename in code coverage
1343
- - add HTML 5 doctype to browser template.
1344
- - add play button to html reporter to rerun a single test
1345
- - add `this.timeout(ms)` as Suite#timeout(ms). Closes [#599](https://github.com/mochajs/mocha/issues/599)
1346
- - update growl dependency to 1.6.x
1347
- - fix encoding of test-case ?grep. Closes [#637](https://github.com/mochajs/mocha/issues/637)
1348
- - fix unicode chars on windows
1349
- - fix dom globals in Opera/IE. Closes [#243](https://github.com/mochajs/mocha/issues/243)
1350
- - fix markdown reporter a tags
1351
- - fix `this.timeout("5s")` support
1352
-
1353
- # 1.6.0 / 2012-10-02
1354
-
1355
- - add object diffs when `err.showDiff` is present
1356
- - add hiding of empty suites when pass/failures are toggled
1357
- - add faster `.length` checks to `checkGlobals()` before performing the filter
1358
-
1359
- # 1.5.0 / 2012-09-21
1360
-
1361
- - add `ms()` to `.slow()` and `.timeout()`
1362
- - add `Mocha#checkLeaks()` to re-enable global leak checks
1363
- - add `this.slow()` option [aheckmann]
1364
- - add tab, CR, LF to error diffs for now
1365
- - add faster `.checkGlobals()` solution [guille]
1366
- - remove `fn.call()` from reduce util
1367
- - remove `fn.call()` from filter util
1368
- - fix forEach. Closes [#582](https://github.com/mochajs/mocha/issues/582)
1369
- - fix relaying of signals [TooTallNate]
1370
- - fix TAP reporter grep number
1371
-
1372
- # 1.4.2 / 2012-09-01
1373
-
1374
- - add support to multiple `Mocha#globals()` calls, and strings
1375
- - add `mocha.reporter()` constructor support [jfirebaugh]
1376
- - add `mocha.timeout()`
1377
- - move query-string parser to utils.js
1378
- - move highlight code to utils.js
1379
- - fix third-party reporter support [exogen]
1380
- - fix client-side API to match node-side [jfirebaugh]
1381
- - fix mocha in iframe [joliss]
1382
-
1383
- # 1.4.1 / 2012-08-28
1384
-
1385
- - add missing `Markdown` export
1386
- - fix `Mocha#grep()`, escape regexp strings
1387
- - fix reference error when `devicePixelRatio` is not defined. Closes [#549](https://github.com/mochajs/mocha/issues/549)
1388
-
1389
- # 1.4.0 / 2012-08-22
1390
-
1391
- - add mkdir -p to `mocha init`. Closes [#539](https://github.com/mochajs/mocha/issues/539)
1392
- - add `.only()`. Closes [#524](https://github.com/mochajs/mocha/issues/524)
1393
- - add `.skip()`. Closes [#524](https://github.com/mochajs/mocha/issues/524)
1394
- - change str.trim() to use utils.trim(). Closes [#533](https://github.com/mochajs/mocha/issues/533)
1395
- - fix HTML progress indicator retina display
1396
- - fix url-encoding of click-to-grep HTML functionality
1397
-
1398
- # 1.3.2 / 2012-08-01
1399
-
1400
- - fix exports double-execution regression. Closes [#531](https://github.com/mochajs/mocha/issues/531)
1401
-
1402
- # 1.3.1 / 2012-08-01
1403
-
1404
- - add passes/failures toggling to HTML reporter
1405
- - add pending state to `xit()` and `xdescribe()` [Brian Moore]
1406
- - add the [**@charset**](https://github.com/charset) "UTF-8"; to fix [#522](https://github.com/mochajs/mocha/issues/522) with FireFox. [Jonathan Creamer]
1407
- - add border-bottom to #stats links
1408
- - add check for runnable in `Runner#uncaught()`. Closes [#494](https://github.com/mochajs/mocha/issues/494)
1409
- - add 0.4 and 0.6 back to travis.yml
1410
- - add `-E, --growl-errors` to growl on failures only
1411
- - add prefixes to debug() names. Closes [#497](https://github.com/mochajs/mocha/issues/497)
1412
- - add `Mocha#invert()` to js api
1413
- - change dot reporter to use sexy unicode dots
1414
- - fix error when clicking pending test in HTML reporter
1415
- - fix `make tm`
1416
-
1417
- # 1.3.0 / 2012-07-05
1418
-
1419
- - add window scrolling to `HTML` reporter
1420
- - add v8 `--trace-*` option support
1421
- - add support for custom reports via `--reporter MODULE`
1422
- - add `--invert` switch to invert `--grep` matches
1423
- - fix export of `Nyan` reporter. Closes [#495](https://github.com/mochajs/mocha/issues/495)
1424
- - fix escaping of `HTML` suite titles. Closes [#486](https://github.com/mochajs/mocha/issues/486)
1425
- - fix `done()` called multiple times with an error test
1426
- - change `--grep` - regexp escape the input
1427
-
1428
- # 1.2.2 / 2012-06-28
1429
-
1430
- - Added 0.8.0 support
1431
-
1432
- # 1.2.1 / 2012-06-25
1433
-
1434
- - Added `this.test.error(err)` support to after each hooks. Closes [#287](https://github.com/mochajs/mocha/issues/287)
1435
- - Added: export top-level suite on global mocha object (mocha.suite). Closes [#448](https://github.com/mochajs/mocha/issues/448)
1436
- - Fixed `js` code block format error in markdown reporter
1437
- - Fixed deprecation warning when using `path.existsSync`
1438
- - Fixed --globals with wildcard
1439
- - Fixed chars in nyan when his head moves back
1440
- - Remove `--growl` from test/mocha.opts. Closes [#289](https://github.com/mochajs/mocha/issues/289)
1441
-
1442
- # 1.2.0 / 2012-06-17
1443
-
1444
- - Added `nyan` reporter [Atsuya Takagi]
1445
- - Added `mocha init <path>` to copy client files
1446
- - Added "specify" synonym for "it" [domenic]
1447
- - Added global leak wildcard support [nathanbowser]
1448
- - Fixed runner emitter leak. closes [#432](https://github.com/mochajs/mocha/issues/432)
1449
- - Fixed omission of .js extension. Closes [#454](https://github.com/mochajs/mocha/issues/454)
1450
-
1451
- # 1.1.0 / 2012-05-30
1452
-
1453
- - Added: check each `mocha(1)` arg for directories to walk
1454
- - Added `--recursive` [tricknotes]
1455
- - Added `context` for BDD [hokaccha]
1456
- - Added styling for new clickable titles
1457
- - Added clickable suite titles to HTML reporter
1458
- - Added warning when strings are thrown as errors
1459
- - Changed: green arrows again in HTML reporter styling
1460
- - Changed ul/li elements instead of divs for better copy-and-pasting [joliss]
1461
- - Fixed issue [#325](https://github.com/mochajs/mocha/issues/325) - add better grep support to js api
1462
- - Fixed: save timer references to avoid Sinon interfering.
1463
-
1464
- # 1.0.3 / 2012-04-30
1465
-
1466
- - Fixed string diff newlines
1467
- - Fixed: removed mocha.css target. Closes [#401](https://github.com/mochajs/mocha/issues/401)
1468
-
1469
- # 1.0.2 / 2012-04-25
1470
-
1471
- - Added HTML reporter duration. Closes [#47](https://github.com/mochajs/mocha/issues/47)
1472
- - Fixed: one postMessage event listener [exogen]
1473
- - Fixed: allow --globals to be used multiple times. Closes [#100](https://github.com/mochajs/mocha/issues/100) [brendannee]
1474
- - Fixed [#158](https://github.com/mochajs/mocha/issues/158): removes jquery include from browser tests
1475
- - Fixed grep. Closes [#372](https://github.com/mochajs/mocha/issues/372) [brendannee]
1476
- - Fixed [#166](https://github.com/mochajs/mocha/issues/166) - When grepping don't display the empty suites
1477
- - Removed test/browser/style.css. Closes [#385](https://github.com/mochajs/mocha/issues/385)
1478
-
1479
- # 1.0.1 / 2012-04-04
1480
-
1481
- - Fixed `.timeout()` in hooks
1482
- - Fixed: allow callback for `mocha.run()` in client version
1483
- - Fixed browser hook error display. Closes [#361](https://github.com/mochajs/mocha/issues/361)
1484
-
1485
- # 1.0.0 / 2012-03-24
1486
-
1487
- - Added js API. Closes [#265](https://github.com/mochajs/mocha/issues/265)
1488
- - Added: initial run of tests with `--watch`. Closes [#345](https://github.com/mochajs/mocha/issues/345)
1489
- - Added: mark `location` as a global on the CS. Closes [#311](https://github.com/mochajs/mocha/issues/311)
1490
- - Added `markdown` reporter (github flavour)
1491
- - Added: scrolling menu to coverage.html. Closes [#335](https://github.com/mochajs/mocha/issues/335)
1492
- - Added source line to html report for Safari [Tyson Tate]
1493
- - Added "min" reporter, useful for `--watch` [Jakub Nešetřil]
1494
- - Added support for arbitrary compilers via . Closes [#338](https://github.com/mochajs/mocha/issues/338) [Ian Young]
1495
- - Added Teamcity export to lib/reporters/index [Michael Riley]
1496
- - Fixed chopping of first char in error reporting. Closes [#334](https://github.com/mochajs/mocha/issues/334) [reported by topfunky]
1497
- - Fixed terrible FF / Opera stack traces
1498
-
1499
- # 0.14.1 / 2012-03-06
1500
-
1501
- - Added lib-cov to _.npmignore_
1502
- - Added reporter to `mocha.run([reporter])` as argument
1503
- - Added some margin-top to the HTML reporter
1504
- - Removed jQuery dependency
1505
- - Fixed `--watch`: purge require cache. Closes [#266](https://github.com/mochajs/mocha/issues/266)
1506
-
1507
- # 0.14.0 / 2012-03-01
1508
-
1509
- - Added string diff support for terminal reporters
1510
-
1511
- # 0.13.0 / 2012-02-23
1512
-
1513
- - Added preliminary test coverage support. Closes [#5](https://github.com/mochajs/mocha/issues/5)
1514
- - Added `HTMLCov` reporter
1515
- - Added `JSONCov` reporter [kunklejr]
1516
- - Added `xdescribe()` and `xit()` to the BDD interface. Closes [#263](https://github.com/mochajs/mocha/issues/263) (docs \* Changed: make json reporter output pretty json
1517
- - Fixed node-inspector support, swapped `--debug` for `debug` to match node. Closes [#247](https://github.com/mochajs/mocha/issues/247)
1518
-
1519
- # 0.12.1 / 2012-02-14
1520
-
1521
- - Added `npm docs mocha` support [TooTallNate]
1522
- - Added a `Context` object used for hook and test-case this. Closes [#253](https://github.com/mochajs/mocha/issues/253)
1523
- - Fixed `Suite#clone()` `.ctx` reference. Closes [#262](https://github.com/mochajs/mocha/issues/262)
1524
-
1525
- # 0.12.0 / 2012-02-02
1526
-
1527
- - Added .coffee `--watch` support. Closes [#242](https://github.com/mochajs/mocha/issues/242)
1528
- - Added support to `--require` files relative to the CWD. Closes [#241](https://github.com/mochajs/mocha/issues/241)
1529
- - Added quick n dirty syntax highlighting. Closes [#248](https://github.com/mochajs/mocha/issues/248)
1530
- - Changed: made HTML progress indicator smaller
1531
- - Fixed xunit errors attribute [dhendo]
1532
-
1533
- # 0.10.2 / 2012-01-21
1534
-
1535
- - Fixed suite count in reporter stats. Closes [#222](https://github.com/mochajs/mocha/issues/222)
1536
- - Fixed `done()` after timeout error reporting [Phil Sung]
1537
- - Changed the 0-based errors to 1
1538
-
1539
- # 0.10.1 / 2012-01-17
1540
-
1541
- - Added support for node 0.7.x
1542
- - Fixed absolute path support. Closes [#215](https://github.com/mochajs/mocha/issues/215) [kompiro]
1543
- - Fixed `--no-colors` option [Jussi Virtanen]
1544
- - Fixed Arial CSS typo in the correct file
1545
-
1546
- # 0.10.0 / 2012-01-13
1547
-
1548
- - Added `-b, --bail` to exit on first exception [guillermo]
1549
- - Added support for `-gc` / `--expose-gc` [TooTallNate]
1550
- - Added `qunit`-inspired interface
1551
- - Added MIT LICENSE. Closes [#194](https://github.com/mochajs/mocha/issues/194)
1552
- - Added: `--watch` all .js in the CWD. Closes [#139](https://github.com/mochajs/mocha/issues/139)
1553
- - Fixed `self.test` reference in runner. Closes [#189](https://github.com/mochajs/mocha/issues/189)
1554
- - Fixed double reporting of uncaught exceptions after timeout. Closes [#195](https://github.com/mochajs/mocha/issues/195)
1555
-
1556
- # 0.8.2 / 2012-01-05
1557
-
1558
- - Added test-case context support. Closes [#113](https://github.com/mochajs/mocha/issues/113)
1559
- - Fixed exit status. Closes [#187](https://github.com/mochajs/mocha/issues/187)
1560
- - Update commander. Closes [#190](https://github.com/mochajs/mocha/issues/190)
1561
-
1562
- # 0.8.1 / 2011-12-30
1563
-
1564
- - Fixed reporting of uncaught exceptions. Closes [#183](https://github.com/mochajs/mocha/issues/183)
1565
- - Fixed error message defaulting [indutny]
1566
- - Changed mocha(1) from bash to node for windows [Nathan Rajlich]
1567
-
1568
- # 0.8.0 / 2011-12-28
1569
-
1570
- - Added `XUnit` reporter [FeeFighters/visionmedia]
1571
- - Added `say(1)` notification support [Maciej Małecki]
1572
- - Changed: fail when done() is invoked with a non-Error. Closes [#171](https://github.com/mochajs/mocha/issues/171)
1573
- - Fixed `err.stack`, defaulting to message. Closes [#180](https://github.com/mochajs/mocha/issues/180)
1574
- - Fixed: `make tm` mkdir -p the dest. Closes [#137](https://github.com/mochajs/mocha/issues/137)
1575
- - Fixed mocha(1) --help bin name
1576
- - Fixed `-d` for `--debug` support
1577
-
1578
- # 0.7.1 / 2011-12-22
1579
-
1580
- - Removed `mocha-debug(1)`, use `mocha --debug`
1581
- - Fixed CWD relative requires
1582
- - Fixed growl issue on windows [Raynos]
1583
- - Fixed: platform specific line endings [TooTallNate]
1584
- - Fixed: escape strings in HTML reporter. Closes [#164](https://github.com/mochajs/mocha/issues/164)
1585
-
1586
- # 0.7.0 / 2011-12-18
1587
-
1588
- - Added support for IE{7,8} [guille]
1589
- - Changed: better browser nextTick implementation [guille]
1590
-
1591
- # 0.6.0 / 2011-12-18
1592
-
1593
- - Added setZeroTimeout timeout for browser (nicer stack traces). Closes [#153](https://github.com/mochajs/mocha/issues/153)
1594
- - Added "view source" on hover for HTML reporter to make it obvious
1595
- - Changed: replace custom growl with growl lib
1596
- - Fixed duplicate reporting for HTML reporter. Closes [#154](https://github.com/mochajs/mocha/issues/154)
1597
- - Fixed silent hook errors in the HTML reporter. Closes [#150](https://github.com/mochajs/mocha/issues/150)
1598
-
1599
- # 0.5.0 / 2011-12-14
1600
-
1601
- - Added: push node_modules directory onto module.paths for relative require Closes [#93](https://github.com/mochajs/mocha/issues/93)
1602
- - Added teamcity reporter [blindsey]
1603
- - Fixed: recover from uncaught exceptions for tests. Closes [#94](https://github.com/mochajs/mocha/issues/94)
1604
- - Fixed: only emit "test end" for uncaught within test, not hook
1605
-
1606
- # 0.4.0 / 2011-12-14
1607
-
1608
- - Added support for test-specific timeouts via `this.timeout(0)`. Closes [#134](https://github.com/mochajs/mocha/issues/134)
1609
- - Added guillermo's client-side EventEmitter. Closes [#132](https://github.com/mochajs/mocha/issues/132)
1610
- - Added progress indicator to the HTML reporter
1611
- - Fixed slow browser tests. Closes [#135](https://github.com/mochajs/mocha/issues/135)
1612
- - Fixed "suite" color for light terminals
1613
- - Fixed `require()` leak spotted by [guillermo]
1614
-
1615
- # 0.3.6 / 2011-12-09
1616
-
1617
- - Removed suite merging (for now)
1618
-
1619
- # 0.3.5 / 2011-12-08
1620
-
1621
- - Added support for `window.onerror` [guillermo]
1622
- - Fixed: clear timeout on uncaught exceptions. Closes [#131](https://github.com/mochajs/mocha/issues/131) [guillermo]
1623
- - Added `mocha.css` to PHONY list.
1624
- - Added `mocha.js` to PHONY list.
1625
-
1626
- # 0.3.4 / 2011-12-08
1627
-
1628
- - Added: allow `done()` to be called with non-Error
1629
- - Added: return Runner from `mocha.run()`. Closes [#126](https://github.com/mochajs/mocha/issues/126)
1630
- - Fixed: run afterEach even on failures. Closes [#125](https://github.com/mochajs/mocha/issues/125)
1631
- - Fixed clobbering of current runnable. Closes [#121](https://github.com/mochajs/mocha/issues/121)
1632
-
1633
- # 0.3.3 / 2011-12-08
1634
-
1635
- - Fixed hook timeouts. Closes [#120](https://github.com/mochajs/mocha/issues/120)
1636
- - Fixed uncaught exceptions in hooks
1637
-
1638
- # 0.3.2 / 2011-12-05
1639
-
1640
- - Fixed weird reporting when `err.message` is not present
1641
-
1642
- # 0.3.1 / 2011-12-04
1643
-
1644
- - Fixed hook event emitter leak. Closes [#117](https://github.com/mochajs/mocha/issues/117)
1645
- - Fixed: export `Spec` constructor. Closes [#116](https://github.com/mochajs/mocha/issues/116)
1646
-
1647
- # 0.3.0 / 2011-12-04
1648
-
1649
- - Added `-w, --watch`. Closes [#72](https://github.com/mochajs/mocha/issues/72)
1650
- - Added `--ignore-leaks` to ignore global leak checking
1651
- - Added browser `?grep=pattern` support
1652
- - Added `--globals <names>` to specify accepted globals. Closes [#99](https://github.com/mochajs/mocha/issues/99)
1653
- - Fixed `mocha-debug(1)` on some systems. Closes [#232](https://github.com/mochajs/mocha/issues/232)
1654
- - Fixed growl total, use `runner.total`
1655
-
1656
- # 0.2.0 / 2011-11-30
1657
-
1658
- - Added `--globals <names>` to specify accepted globals. Closes [#99](https://github.com/mochajs/mocha/issues/99)
1659
- - Fixed funky highlighting of messages. Closes [#97](https://github.com/mochajs/mocha/issues/97)
1660
- - Fixed `mocha-debug(1)`. Closes [#232](https://github.com/mochajs/mocha/issues/232)
1661
- - Fixed growl total, use runner.total
1662
-
1663
- # 0.1.0 / 2011-11-29
1664
-
1665
- - Added `suiteSetup` and `suiteTeardown` to TDD interface [David Henderson]
1666
- - Added growl icons. Closes [#84](https://github.com/mochajs/mocha/issues/84)
1667
- - Fixed coffee-script support
1668
-
1669
- # 0.0.8 / 2011-11-25
1670
-
1671
- - Fixed: use `Runner#total` for accurate reporting
1672
-
1673
- # 0.0.7 / 2011-11-25
1674
-
1675
- - Added `Hook`
1676
- - Added `Runnable`
1677
- - Changed: `Test` is `Runnable`
1678
- - Fixed global leak reporting in hooks
1679
- - Fixed: > 2 calls to done() only report the error once
1680
- - Fixed: clear timer on failure. Closes [#80](https://github.com/mochajs/mocha/issues/80)
1681
-
1682
- # 0.0.6 / 2011-11-25
1683
-
1684
- - Fixed return on immediate async error. Closes [#80](https://github.com/mochajs/mocha/issues/80)
1685
-
1686
- # 0.0.5 / 2011-11-24
1687
-
1688
- - Fixed: make mocha.opts whitespace less picky [kkaefer]
1689
-
1690
- # 0.0.4 / 2011-11-24
1691
-
1692
- - Added `--interfaces`
1693
- - Added `--reporters`
1694
- - Added `-c, --colors`. Closes [#69](https://github.com/mochajs/mocha/issues/69)
1695
- - Fixed hook timeouts
1696
-
1697
- # 0.0.3 / 2011-11-23
1698
-
1699
- - Added `-C, --no-colors` to explicitly disable
1700
- - Added coffee-script support
1701
-
1702
- # 0.0.2 / 2011-11-22
1703
-
1704
- - Fixed global leak detection due to Safari bind() change
1705
- - Fixed: escape html entities in Doc reporter
1706
- - Fixed: escape html entities in HTML reporter
1707
- - Fixed pending test support for HTML reporter. Closes [#66](https://github.com/mochajs/mocha/issues/66)
1708
-
1709
- # 0.0.1 / 2011-11-22
1710
-
1711
- - Added `--timeout` second shorthand support, ex `--timeout 3s`.
1712
- - Fixed "test end" event for uncaughtExceptions. Closes [#61](https://github.com/mochajs/mocha/issues/61)
1713
-
1714
- # 0.0.1-alpha6 / 2011-11-19
1715
-
1716
- - Added travis CI support (needs enabling when public)
1717
- - Added preliminary browser support
1718
- - Added `make mocha.css` target. Closes [#45](https://github.com/mochajs/mocha/issues/45)
1719
- - Added stack trace to TAP errors. Closes [#52](https://github.com/mochajs/mocha/issues/52)
1720
- - Renamed tearDown to teardown. Closes [#49](https://github.com/mochajs/mocha/issues/49)
1721
- - Fixed: cascading hooksc. Closes [#30](https://github.com/mochajs/mocha/issues/30)
1722
- - Fixed some colors for non-tty
1723
- - Fixed errors thrown in sync test-cases due to nextTick
1724
- - Fixed Base.window.width... again give precedence to 0.6.x
1725
-
1726
- # 0.0.1-alpha5 / 2011-11-17
1727
-
1728
- - Added `doc` reporter. Closes [#33](https://github.com/mochajs/mocha/issues/33)
1729
- - Added suite merging. Closes [#28](https://github.com/mochajs/mocha/issues/28)
1730
- - Added TextMate bundle and `make tm`. Closes [#20](https://github.com/mochajs/mocha/issues/20)
1731
-
1732
- # 0.0.1-alpha4 / 2011-11-15
1733
-
1734
- - Fixed getWindowSize() for 0.4.x
1735
-
1736
- # 0.0.1-alpha3 / 2011-11-15
1737
-
1738
- - Added `-s, --slow <ms>` to specify "slow" test threshold
1739
- - Added `mocha-debug(1)`
1740
- - Added `mocha.opts` support. Closes [#31](https://github.com/mochajs/mocha/issues/31)
1741
- - Added: default [files] to _test/\*.js_
1742
- - Added protection against multiple calls to `done()`. Closes [#35](https://github.com/mochajs/mocha/issues/35)
1743
- - Changed: bright yellow for slow Dot reporter tests
1744
-
1745
- # 0.0.1-alpha2 / 2011-11-08
1746
-
1747
- - Missed this one :)
1748
-
1749
- # 0.0.1-alpha1 / 2011-11-08
1750
-
1751
- - Initial release
1
+ # 6.1.4 / 2019-04-18
2
+
3
+ ## :lock: Security Fixes
4
+
5
+ - [#3877](https://github.com/mochajs/mocha/issues/3877): Upgrade [js-yaml](https://npm.im/js-yaml), addressing [code injection vulnerability](https://www.npmjs.com/advisories/813) ([**@bjornstar**](https://github.com/bjornstar))
6
+
7
+ # 6.1.3 / 2019-04-11
8
+
9
+ ## :bug: Fixes
10
+
11
+ - [#3863](https://github.com/mochajs/mocha/issues/3863): Fix `yargs`-related global scope pollution ([**@inukshuk**](https://github.com/inukshuk))
12
+ - [#3869](https://github.com/mochajs/mocha/issues/3869): Fix failure when installed w/ `pnpm` ([**@boneskull**](https://github.com/boneskull))
13
+
14
+ # 6.1.2 / 2019-04-08
15
+
16
+ ## :bug: Fixes
17
+
18
+ - [#3867](https://github.com/mochajs/mocha/issues/3867): Re-publish v6.1.1 from POSIX OS to avoid dropped executable flags ([**@boneskull**](https://github.com/boneskull))
19
+
20
+ # 6.1.1 / 2019-04-07
21
+
22
+ ## :bug: Fixes
23
+
24
+ - [#3866](https://github.com/mochajs/mocha/issues/3866): Fix Windows End-of-Line publishing issue ([**@juergba**](https://github.com/juergba) & [**@cspotcode**](https://github.com/cspotcode))
25
+
26
+ # 6.1.0 / 2019-04-07
27
+
28
+ ## :lock: Security Fixes
29
+
30
+ - [#3845](https://github.com/mochajs/mocha/issues/3845): Update dependency "js-yaml" to v3.13.0 per npm security advisory ([**@plroebuck**](https://github.com/plroebuck))
31
+
32
+ ## :tada: Enhancements
33
+
34
+ - [#3766](https://github.com/mochajs/mocha/issues/3766): Make reporter constructor support optional `options` parameter ([**@plroebuck**](https://github.com/plroebuck))
35
+ - [#3760](https://github.com/mochajs/mocha/issues/3760): Add support for config files with `.jsonc` extension ([**@sstephant**](https://github.com/sstephant))
36
+
37
+ ## :fax: Deprecations
38
+
39
+ These are _soft_-deprecated, and will emit a warning upon use. Support will be removed in (likely) the next major version of Mocha:
40
+
41
+ - [#3719](https://github.com/mochajs/mocha/issues/3719): Deprecate `this.skip()` for "after all" hooks ([**@juergba**](https://github.com/juergba))
42
+
43
+ ## :bug: Fixes
44
+
45
+ - [#3829](https://github.com/mochajs/mocha/issues/3829): Use cwd-relative pathname to load config file ([**@plroebuck**](https://github.com/plroebuck))
46
+ - [#3745](https://github.com/mochajs/mocha/issues/3745): Fix async calls of `this.skip()` in "before each" hooks ([**@juergba**](https://github.com/juergba))
47
+ - [#3669](https://github.com/mochajs/mocha/issues/3669): Enable `--allow-uncaught` for uncaught exceptions thrown inside hooks ([**@givanse**](https://github.com/givanse))
48
+
49
+ and some regressions:
50
+
51
+ - [#3848](https://github.com/mochajs/mocha/issues/3848): Fix `Suite` cloning by copying `root` property ([**@fatso83**](https://github.com/fatso83))
52
+ - [#3816](https://github.com/mochajs/mocha/issues/3816): Guard against undefined timeout option ([**@boneskull**](https://github.com/boneskull))
53
+ - [#3814](https://github.com/mochajs/mocha/issues/3814): Update "yargs" in order to avoid deprecation message ([**@boneskull**](https://github.com/boneskull))
54
+ - [#3788](https://github.com/mochajs/mocha/issues/3788): Fix support for multiple node flags ([**@aginzberg**](https://github.com/aginzberg))
55
+
56
+ ## :book: Documentation
57
+
58
+ - [mochajs/mocha-examples](https://github.com/mochajs/mocha-examples): New repository of working examples of common configurations using mocha ([**@craigtaub**](https://github.com/craigtaub))
59
+ - [#3850](https://github.com/mochajs/mocha/issues/3850): Remove pound icon showing on header hover on docs ([**@jd2rogers2**](https://github.com/jd2rogers2))
60
+ - [#3812](https://github.com/mochajs/mocha/issues/3812): Add autoprefixer to documentation page CSS ([**@Munter**](https://github.com/Munter))
61
+ - [#3811](https://github.com/mochajs/mocha/issues/3811): Update doc examples "tests.html" ([**@DavidLi119**](https://github.com/DavidLi119))
62
+ - [#3807](https://github.com/mochajs/mocha/issues/3807): Mocha website HTML tweaks ([**@plroebuck**](https://github.com/plroebuck))
63
+ - [#3793](https://github.com/mochajs/mocha/issues/3793): Update config file example ".mocharc.yml" ([**@cspotcode**](https://github.com/cspotcode))
64
+
65
+ ## :nut_and_bolt: Other
66
+
67
+ - [#3830](https://github.com/mochajs/mocha/issues/3830): Replace dependency "findup-sync" with "find-up" for faster startup ([**@cspotcode**](https://github.com/cspotcode))
68
+ - [#3799](https://github.com/mochajs/mocha/issues/3799): Update devDependencies to fix many npm vulnerabilities ([**@XhmikosR**](https://github.com/XhmikosR))
69
+
70
+ # 6.0.2 / 2019-02-25
71
+
72
+ ## :bug: Fixes
73
+
74
+ Two more regressions fixed:
75
+
76
+ - [#3768](https://github.com/mochajs/mocha/issues/3768): Test file paths no longer dropped from `mocha.opts` ([**@boneskull**](https://github.com/boneskull))
77
+ - [#3767](https://github.com/mochajs/mocha/issues/3767): `--require` does not break on module names that look like certain `node` flags ([**@boneskull**](https://github.com/boneskull))
78
+
79
+ # 6.0.1 / 2019-02-21
80
+
81
+ The obligatory round of post-major-release bugfixes.
82
+
83
+ ## :bug: Fixes
84
+
85
+ These issues were regressions.
86
+
87
+ - [#3754](https://github.com/mochajs/mocha/issues/3754): Mocha again finds `test.js` when run without arguments ([**@plroebuck**](https://github.com/plroebuck))
88
+ - [#3756](https://github.com/mochajs/mocha/issues/3756): Mocha again supports third-party interfaces via `--ui` ([**@boneskull**](https://github.com/boneskull))
89
+ - [#3755](https://github.com/mochajs/mocha/issues/3755): Fix broken `--watch` ([**@boneskull**](https://github.com/boneskull))
90
+ - [#3759](https://github.com/mochajs/mocha/issues/3759): Fix unwelcome deprecation notice when Mocha run against languages (CoffeeScript) with implicit return statements; _returning a non-`undefined` value from a `describe` callback is no longer considered deprecated_ ([**@boneskull**](https://github.com/boneskull))
91
+
92
+ ## :book: Documentation
93
+
94
+ - [#3738](https://github.com/mochajs/mocha/issues/3738): Upgrade to `@mocha/docdash@2` ([**@tendonstrength**](https://github.com/tendonstrength))
95
+ - [#3751](https://github.com/mochajs/mocha/issues/3751): Use preferred names for example config files ([**@Szauka**](https://github.com/Szauka))
96
+
97
+ # 6.0.0 / 2019-02-18
98
+
99
+ ## :tada: Enhancements
100
+
101
+ - [#3726](https://github.com/mochajs/mocha/issues/3726): Add ability to unload files from `require` cache ([**@plroebuck**](https://github.com/plroebuck))
102
+
103
+ ## :bug: Fixes
104
+
105
+ - [#3737](https://github.com/mochajs/mocha/issues/3737): Fix falsy values from options globals ([**@plroebuck**](https://github.com/plroebuck))
106
+ - [#3707](https://github.com/mochajs/mocha/issues/3707): Fix encapsulation issues for `Suite#_onlyTests` and `Suite#_onlySuites` ([**@vkarpov15**](https://github.com/vkarpov15))
107
+ - [#3711](https://github.com/mochajs/mocha/issues/3711): Fix diagnostic messages dealing with plurality and markup of output ([**@plroebuck**](https://github.com/plroebuck))
108
+ - [#3723](https://github.com/mochajs/mocha/issues/3723): Fix "reporter-option" to allow comma-separated options ([**@boneskull**](https://github.com/boneskull))
109
+ - [#3722](https://github.com/mochajs/mocha/issues/3722): Fix code quality and performance of `lookupFiles` and `files` ([**@plroebuck**](https://github.com/plroebuck))
110
+ - [#3650](https://github.com/mochajs/mocha/issues/3650), [#3654](https://github.com/mochajs/mocha/issues/3654): Fix noisy error message when no files found ([**@craigtaub**](https://github.com/craigtaub))
111
+ - [#3632](https://github.com/mochajs/mocha/issues/3632): Tests having an empty title are no longer confused with the "root" suite ([**@juergba**](https://github.com/juergba))
112
+ - [#3666](https://github.com/mochajs/mocha/issues/3666): Fix missing error codes ([**@vkarpov15**](https://github.com/vkarpov15))
113
+ - [#3684](https://github.com/mochajs/mocha/issues/3684): Fix exiting problem in Node.js v11.7.0+ ([**@addaleax**](https://github.com/addaleax))
114
+ - [#3691](https://github.com/mochajs/mocha/issues/3691): Fix `--delay` (and other boolean options) not working in all cases ([**@boneskull**](https://github.com/boneskull))
115
+ - [#3692](https://github.com/mochajs/mocha/issues/3692): Fix invalid command-line argument usage not causing actual errors ([**@boneskull**](https://github.com/boneskull))
116
+ - [#3698](https://github.com/mochajs/mocha/issues/3698), [#3699](https://github.com/mochajs/mocha/issues/3699): Fix debug-related Node.js options not working in all cases ([**@boneskull**](https://github.com/boneskull))
117
+ - [#3700](https://github.com/mochajs/mocha/issues/3700): Growl notifications now show the correct number of tests run ([**@outsideris**](https://github.com/outsideris))
118
+ - [#3686](https://github.com/mochajs/mocha/issues/3686): Avoid potential ReDoS when diffing large objects ([**@cyjake**](https://github.com/cyjake))
119
+ - [#3715](https://github.com/mochajs/mocha/issues/3715): Fix incorrect order of emitted events when used programmatically ([**@boneskull**](https://github.com/boneskull))
120
+ - [#3706](https://github.com/mochajs/mocha/issues/3706): Fix regression wherein `--reporter-option`/`--reporter-options` did not support comma-separated key/value pairs ([**@boneskull**](https://github.com/boneskull))
121
+
122
+ ## :book: Documentation
123
+
124
+ - [#3652](https://github.com/mochajs/mocha/issues/3652): Switch from Jekyll to Eleventy ([**@Munter**](https://github.com/Munter))
125
+
126
+ ## :nut_and_bolt: Other
127
+
128
+ - [#3677](https://github.com/mochajs/mocha/issues/3677): Add error objects for createUnsupportedError and createInvalidExceptionError ([**@boneskull**](https://github.com/boneskull))
129
+ - [#3733](https://github.com/mochajs/mocha/issues/3733): Removed unnecessary processing in post-processing hook ([**@wanseob**](https://github.com/wanseob))
130
+ - [#3730](https://github.com/mochajs/mocha/issues/3730): Update nyc to latest version ([**@coreyfarrell**](https://github.com/coreyfarrell))
131
+ - [#3648](https://github.com/mochajs/mocha/issues/3648), [#3680](https://github.com/mochajs/mocha/issues/3680): Fixes to support latest versions of [unexpected](https://npm.im/unexpected) and [unexpected-sinon](https://npm.im/unexpected-sinon) ([**@sunesimonsen**](https://github.com/sunesimonsen))
132
+ - [#3638](https://github.com/mochajs/mocha/issues/3638): Add meta tag to site ([**@MartijnCuppens**](https://github.com/MartijnCuppens))
133
+ - [#3653](https://github.com/mochajs/mocha/issues/3653): Fix parts of test suite failing to run on Windows ([**@boneskull**](https://github.com/boneskull))
134
+
135
+ # 6.0.0-1 / 2019-01-02
136
+
137
+ ## :bug: Fixes
138
+
139
+ - Fix missing `mocharc.json` in published package ([**@boneskull**](https://github.com/boneskull))
140
+
141
+ # 6.0.0-0 / 2019-01-01
142
+
143
+ **Documentation for this release can be found at [next.mochajs.org](https://next.mochajs.org)**!
144
+
145
+ Welcome [**@plroebuck**](https://github.com/plroebuck), [**@craigtaub**](https://github.com/craigtaub), & [**@markowsiak**](https://github.com/markowsiak) to the team!
146
+
147
+ ## :boom: Breaking Changes
148
+
149
+ - [#3149](https://github.com/mochajs/mocha/issues/3149): **Drop Node.js v4.x support** ([**@outsideris**](https://github.com/outsideris))
150
+ - [#3556](https://github.com/mochajs/mocha/issues/3556): Changes to command-line options ([**@boneskull**](https://github.com/boneskull)):
151
+ - `--grep` and `--fgrep` are now mutually exclusive; attempting to use both will cause Mocha to fail instead of simply ignoring `--grep`
152
+ - `--compilers` is no longer supported; attempting to use will cause Mocha to fail with a link to more information
153
+ - `-d` is no longer an alias for `--debug`; `-d` is currently ignored
154
+ - [#3275](https://github.com/mochajs/mocha/issues/3275): `--watch-extensions` no longer implies `js`; it must be explicitly added ([**@TheDancingCode**](https://github.com/TheDancingCode))
155
+ - [#2908](https://github.com/mochajs/mocha/issues/2908): `tap` reporter emits error messages ([**@chrmod**](https://github.com/chrmod))
156
+ - [#2819](https://github.com/mochajs/mocha/issues/2819): When conditionally skipping in a `before` hook, subsequent `before` hooks _and_ tests in nested suites are now skipped ([**@bannmoore**](https://github.com/bannmoore))
157
+ - [#627](https://github.com/mochajs/mocha/issues/627): Emit filepath in "timeout exceeded" exceptions where applicable ([**@boneskull**](https://github.com/boneskull))
158
+ - [#3556](https://github.com/mochajs/mocha/issues/3556): `lib/template.html` has moved to `lib/browser/template.html` ([**@boneskull**](https://github.com/boneskull))
159
+ - [#2576](https://github.com/mochajs/mocha/issues/2576): An exception is now thrown if Mocha fails to parse or find a `mocha.opts` at a user-specified path ([**@plroebuck**](https://github.com/plroebuck))
160
+ - [#3458](https://github.com/mochajs/mocha/issues/3458): Instantiating a `Base`-extending reporter without a `Runner` parameter will throw an exception ([**@craigtaub**](https://github.com/craigtaub))
161
+ - [#3125](https://github.com/mochajs/mocha/issues/3125): For consumers of Mocha's programmatic API, all exceptions thrown from Mocha now have a `code` property (and some will have additional metadata). Some `Error` messages have changed. **Please use the `code` property to check `Error` types instead of the `message` property**; these descriptions will be localized in the future. ([**@craigtaub**](https://github.com/craigtaub))
162
+
163
+ ## :fax: Deprecations
164
+
165
+ These are _soft_-deprecated, and will emit a warning upon use. Support will be removed in (likely) the next major version of Mocha:
166
+
167
+ - `-gc` users should use `--gc-global` instead
168
+ - Consumers of the function exported by `bin/options` should now use the `loadMochaOpts` or `loadOptions` (preferred) functions exported by the `lib/cli/options` module
169
+
170
+ Regarding the `Mocha` class constructor (from `lib/mocha`):
171
+
172
+ - Use property `color: false` instead of `useColors: false`
173
+ - Use property `timeout: false` instead of `enableTimeouts: false`
174
+
175
+ All of the above deprecations were introduced by [#3556](https://github.com/mochajs/mocha/issues/3556).
176
+
177
+ `mocha.opts` is now considered "legacy"; please prefer RC file or `package.json` over `mocha.opts`.
178
+
179
+ ## :tada: Enhancements
180
+
181
+ Enhancements introduced in [#3556](https://github.com/mochajs/mocha/issues/3556):
182
+
183
+ - Mocha now supports "RC" files in JS, JSON, YAML, or `package.json`-based (using `mocha` property) format
184
+
185
+ - `.mocharc.js`, `.mocharc.json`, `.mocharc.yaml` or `.mocharc.yml` are valid "rc" file names and will be automatically loaded
186
+ - Use `--config /path/to/rc/file` to specify an explicit path
187
+ - Use `--package /path/to/package.json` to specify an explicit `package.json` to read the `mocha` prop from
188
+ - Use `--no-config` or `--no-package` to completely disable loading of configuration via RC file and `package.json`, respectively
189
+ - Configurations are merged as applicable using the priority list:
190
+ 1. Command-line arguments
191
+ 1. RC file
192
+ 1. `package.json`
193
+ 1. `mocha.opts`
194
+ 1. Mocha's own defaults
195
+ - Check out these [example config files](https://github.com/mochajs/mocha/tree/master/example/config)
196
+
197
+ - Node/V8 flag support in `mocha` executable:
198
+
199
+ - Support all allowed `node` flags as supported by the running version of `node` (also thanks to [**@demurgos**](https://github.com/demurgos))
200
+ - Support any V8 flag by prepending `--v8-` to the flag name
201
+ - All flags are also supported via config files, `package.json` properties, or `mocha.opts`
202
+ - Debug-related flags (e.g., `--inspect`) now _imply_ `--no-timeouts`
203
+ - Use of e.g., `--debug` will automatically invoke `--inspect` if supported by running version of `node`
204
+
205
+ - Support negation of any Mocha-specific command-line flag by prepending `--no-` to the flag name
206
+
207
+ - Interfaces now have descriptions when listed using `--interfaces` flag
208
+
209
+ - `Mocha` constructor supports all options
210
+
211
+ - `--extension` is now an alias for `--watch-extensions` and affects _non-watch-mode_ test runs as well. For example, to run _only_ `test/*.coffee` (not `test/*.js`), you can do `mocha --require coffee-script/register --extensions coffee`.
212
+
213
+ - [#3552](https://github.com/mochajs/mocha/issues/3552): `tap` reporter is now TAP13-capable ([**@plroebuck**](https://github.com/plroebuck) & [**@mollstam**](https://github.com/mollstam))
214
+
215
+ - [#3535](https://github.com/mochajs/mocha/issues/3535): Mocha's version can now be queried programmatically via public property `Mocha.prototype.version` ([**@plroebuck**](https://github.com/plroebuck))
216
+
217
+ - [#3428](https://github.com/mochajs/mocha/issues/3428): `xunit` reporter shows diffs ([**@mlucool**](https://github.com/mlucool))
218
+
219
+ - [#2529](https://github.com/mochajs/mocha/issues/2529): `Runner` now emits a `retry` event when tests are retried (reporters can listen for this) ([**@catdad**](https://github.com/catdad))
220
+
221
+ - [#2962](https://github.com/mochajs/mocha/issues/2962), [#3111](https://github.com/mochajs/mocha/issues/3111): In-browser notification support; warn about missing prereqs when `--growl` supplied ([**@plroebuck**](https://github.com/plroebuck))
222
+
223
+ ## :bug: Fixes
224
+
225
+ - [#3356](https://github.com/mochajs/mocha/issues/3356): `--no-timeouts` and `--timeout 0` now does what you'd expect ([**@boneskull**](https://github.com/boneskull))
226
+ - [#3475](https://github.com/mochajs/mocha/issues/3475): Restore `--no-exit` option ([**@boneskull**](https://github.com/boneskull))
227
+ - [#3570](https://github.com/mochajs/mocha/issues/3570): Long-running tests now respect `SIGINT` ([**@boneskull**](https://github.com/boneskull))
228
+ - [#2944](https://github.com/mochajs/mocha/issues/2944): `--forbid-only` and `--forbid-pending` now "fail fast" when encountered on a suite ([**@outsideris**](https://github.com/outsideris))
229
+ - [#1652](https://github.com/mochajs/mocha/issues/1652), [#2951](https://github.com/mochajs/mocha/issues/2951): Fix broken clamping of timeout values ([**@plroebuck**](https://github.com/plroebuck))
230
+ - [#2095](https://github.com/mochajs/mocha/issues/2095), [#3521](https://github.com/mochajs/mocha/issues/3521): Do not log `stdout:` prefix in browser console ([**@Bamieh**](https://github.com/Bamieh))
231
+ - [#3595](https://github.com/mochajs/mocha/issues/3595): Fix mochajs.org deployment problems ([**@papandreou**](https://github.com/papandreou))
232
+ - [#3518](https://github.com/mochajs/mocha/issues/3518): Improve `utils.isPromise()` ([**@fabiosantoscode**](https://github.com/fabiosantoscode))
233
+ - [#3320](https://github.com/mochajs/mocha/issues/3320): Fail gracefully when non-extensible objects are thrown in async tests ([**@fargies**](https://github.com/fargies))
234
+ - [#2475](https://github.com/mochajs/mocha/issues/2475): XUnit does not duplicate test result numbers in "errors" and "failures"; "failures" will **always** be zero ([**@mlucool**](https://github.com/mlucool))
235
+ - [#3398](https://github.com/mochajs/mocha/issues/3398), [#3598](https://github.com/mochajs/mocha/issues/3598), [#3457](https://github.com/mochajs/mocha/issues/3457), [#3617](https://github.com/mochajs/mocha/issues/3617): Fix regression wherein `--bail` would not execute "after" nor "after each" hooks ([**@juergba**](https://github.com/juergba))
236
+ - [#3580](https://github.com/mochajs/mocha/issues/3580): Fix potential exception when using XUnit reporter programmatically ([**@Lana-Light**](https://github.com/Lana-Light))
237
+ - [#1304](https://github.com/mochajs/mocha/issues/1304): Do not output color to `TERM=dumb` ([**@plroebuck**](https://github.com/plroebuck))
238
+
239
+ ## :book: Documentation
240
+
241
+ - [#3525](https://github.com/mochajs/mocha/issues/3525): Improvements to `.github/CONTRIBUTING.md` ([**@markowsiak**](https://github.com/markowsiak))
242
+ - [#3466](https://github.com/mochajs/mocha/issues/3466): Update description of `slow` option ([**@finfin**](https://github.com/finfin))
243
+ - [#3405](https://github.com/mochajs/mocha/issues/3405): Remove references to bower installations ([**@goteamtim**](https://github.com/goteamtim))
244
+ - [#3361](https://github.com/mochajs/mocha/issues/3361): Improvements to `--watch` docs ([**@benglass**](https://github.com/benglass))
245
+ - [#3136](https://github.com/mochajs/mocha/issues/3136): Improve docs around globbing and shell expansion ([**@akrawchyk**](https://github.com/akrawchyk))
246
+ - [#2819](https://github.com/mochajs/mocha/issues/2819): Update docs around skips and hooks ([**@bannmoore**](https://github.com/bannmoore))
247
+ - Many improvements by [**@outsideris**](https://github.com/outsideris)
248
+
249
+ ## :nut_and_bolt: Other
250
+
251
+ - [#3557](https://github.com/mochajs/mocha/issues/3557): Use `ms` userland module instead of hand-rolled solution ([**@gizemkeser**](https://github.com/gizemkeser))
252
+ - Many CI fixes and other refactors by [**@plroebuck**](https://github.com/plroebuck)
253
+ - Test refactors by [**@outsideris**](https://github.com/outsideris)
254
+
255
+ # 5.2.0 / 2018-05-18
256
+
257
+ ## :tada: Enhancements
258
+
259
+ - [#3375](https://github.com/mochajs/mocha/pull/3375): Add support for comments in `mocha.opts` ([@plroebuck](https://github.com/plroebuck))
260
+
261
+ ## :bug: Fixes
262
+
263
+ - [#3346](https://github.com/mochajs/mocha/pull/3346): Exit correctly from `before` hooks when using `--bail` ([@outsideris](https://github.com/outsideris))
264
+
265
+ ## :book: Documentation
266
+
267
+ - [#3328](https://github.com/mochajs/mocha/pull/3328): Mocha-flavored [API docs](https://mochajs.org/api/)! ([@Munter](https://github.com/munter))
268
+
269
+ ## :nut_and_bolt: Other
270
+
271
+ - [#3330](https://github.com/mochajs/mocha/pull/3330): Use `Buffer.from()` ([@harrysarson](https://github.com/harrysarson))
272
+ - [#3295](https://github.com/mochajs/mocha/pull/3295): Remove redundant folder ([@DavNej](https://github.com/DajNev))
273
+ - [#3356](https://github.com/mochajs/mocha/pull/3356): Refactoring ([@plroebuck](https://github.com/plroebuck))
274
+
275
+ # 5.1.1 / 2018-04-18
276
+
277
+ ## :bug: Fixes
278
+
279
+ - [#3325](https://github.com/mochajs/mocha/issues/3325): Revert change which broke `--watch` ([@boneskull](https://github.com/boneskull))
280
+
281
+ # 5.1.0 / 2018-04-12
282
+
283
+ ## :tada: Enhancements
284
+
285
+ - [#3210](https://github.com/mochajs/mocha/pull/3210): Add `--exclude` option ([@metalex9](https://github.com/metalex9))
286
+
287
+ ## :bug: Fixes
288
+
289
+ - [#3318](https://github.com/mochajs/mocha/pull/3318): Fix failures in circular objects in JSON reporter ([@jeversmann](https://github.com/jeversmann), [@boneskull](https://github.com/boneskull))
290
+
291
+ ## :book: Documentation
292
+
293
+ - [#3323](https://github.com/mochajs/mocha/pull/3323): Publish actual [API documentation](https://mochajs.org/api/)! ([@dfberry](https://github.com/dfberry), [@Munter](https://github.com/munter))
294
+ - [#3299](https://github.com/mochajs/mocha/pull/3299): Improve docs around exclusive tests ([@nicgirault](https://github.com/nicgirault))
295
+
296
+ ## :nut_and_bolt: Other
297
+
298
+ - [#3302](https://github.com/mochajs/mocha/pull/3302), [#3308](https://github.com/mochajs/mocha/pull/3308), [#3310](https://github.com/mochajs/mocha/pull/3310), [#3315](https://github.com/mochajs/mocha/pull/3315), [#3316](https://github.com/mochajs/mocha/pull/3316): Build matrix improvements ([more info](https://boneskull.com/mocha-and-travis-ci-build-stages/)) ([@outsideris](https://github.com/outsideris), [@boneskull](https://github.com/boneskull))
299
+ - [#3272](https://github.com/mochajs/mocha/pull/3272): Refactor reporter tests ([@jMuzsik](https://github.com/jMuzsik))
300
+
301
+ # 5.0.5 / 2018-03-22
302
+
303
+ Welcome [@outsideris](https://github.com/outsideris) to the team!
304
+
305
+ ## :bug: Fixes
306
+
307
+ - [#3096](https://github.com/mochajs/mocha/issues/3096): Fix `--bail` failing to bail within hooks ([@outsideris](https://github.com/outsideris))
308
+ - [#3184](https://github.com/mochajs/mocha/issues/3184): Don't skip too many suites (using `describe.skip()`) ([@outsideris](https://github.com/outsideris))
309
+
310
+ ## :book: Documentation
311
+
312
+ - [#3133](https://github.com/mochajs/mocha/issues/3133): Improve docs regarding "pending" behavior ([@ematicipo](https://github.com/ematicipo))
313
+ - [#3276](https://github.com/mochajs/mocha/pull/3276), [#3274](https://github.com/mochajs/mocha/pull/3274): Fix broken stuff in `CHANGELOG.md` ([@tagoro9](https://github.com/tagoro9), [@honzajavorek](https://github.com/honzajavorek))
314
+
315
+ ## :nut_and_bolt: Other
316
+
317
+ - [#3208](https://github.com/mochajs/mocha/issues/3208): Improve test coverage for AMD users ([@outsideris](https://github.com/outsideris))
318
+ - [#3267](https://github.com/mochajs/mocha/pull/3267): Remove vestiges of PhantomJS from CI ([@anishkny](https://github.com/anishkny))
319
+ - [#2952](https://github.com/mochajs/mocha/issues/2952): Fix a debug message ([@boneskull](https://github.com/boneskull))
320
+
321
+ # 5.0.4 / 2018-03-07
322
+
323
+ ## :bug: Fixes
324
+
325
+ - [#3265](https://github.com/mochajs/mocha/issues/3265): Fixes regression in "watch" functionality introduced in v5.0.2 ([@outsideris](https://github.com/outsideris))
326
+
327
+ # 5.0.3 / 2018-03-06
328
+
329
+ This patch features a fix to address a potential "low severity" [ReDoS vulnerability](https://snyk.io/vuln/npm:diff:20180305) in the [diff](https://npm.im/diff) package (a dependency of Mocha).
330
+
331
+ ## :lock: Security Fixes
332
+
333
+ - [#3266](https://github.com/mochajs/mocha/pull/3266): Bump `diff` to v3.5.0 ([@anishkny](https://github.com/anishkny))
334
+
335
+ ## :nut_and_bolt: Other
336
+
337
+ - [#3011](https://github.com/mochajs/mocha/issues/3011): Expose `generateDiff()` in `Base` reporter ([@harrysarson](https://github.com/harrysarson))
338
+
339
+ # 5.0.2 / 2018-03-05
340
+
341
+ This release fixes a class of tests which report as _false positives_. **Certain tests will now break**, though they would have previously been reported as passing. Details below. Sorry for the inconvenience!
342
+
343
+ ## :bug: Fixes
344
+
345
+ - [#3226](https://github.com/mochajs/mocha/issues/3226): Do not swallow errors that are thrown asynchronously from passing tests ([@boneskull](https://github.com/boneskull)). Example:
346
+
347
+ \```js
348
+ it('should actually fail, sorry!', function (done) {
349
+ // passing assertion
350
+ assert(true === true);
351
+
352
+ // test complete & is marked as passing
353
+ done();
354
+
355
+ // ...but something evil lurks within
356
+ setTimeout(() => {
357
+ throw new Error('chaos!');
358
+ }, 100);
359
+ });
360
+ \```
361
+
362
+ Previously to this version, Mocha would have _silently swallowed_ the `chaos!` exception, and you wouldn't know. Well, _now you know_. Mocha cannot recover from this gracefully, so it will exit with a nonzero code.
363
+
364
+ **Maintainers of external reporters**: _If_ a test of this class is encountered, the `Runner` instance will emit the `end` event _twice_; you _may_ need to change your reporter to use `runner.once('end')` intead of `runner.on('end')`.
365
+
366
+ - [#3093](https://github.com/mochajs/mocha/issues/3093): Fix stack trace reformatting problem ([@outsideris](https://github.com/outsideris))
367
+
368
+ ## :nut_and_bolt: Other
369
+
370
+ - [#3248](https://github.com/mochajs/mocha/issues/3248): Update `browser-stdout` to v1.3.1 ([@honzajavorek](https://github.com/honzajavorek))
371
+
372
+ # 5.0.1 / 2018-02-07
373
+
374
+ ...your garden-variety patch release.
375
+
376
+ Special thanks to [Wallaby.js](https://wallabyjs.com) for their continued support! :heart:
377
+
378
+ ## :bug: Fixes
379
+
380
+ - [#1838](https://github.com/mochajs/mocha/issues/1838): `--delay` now works with `.only()` ([@silviom](https://github.com/silviom))
381
+ - [#3119](https://github.com/mochajs/mocha/issues/3119): Plug memory leak present in v8 ([@boneskull](https://github.com/boneskull))
382
+
383
+ ## :book: Documentation
384
+
385
+ - [#3132](https://github.com/mochajs/mocha/issues/3132), [#3098](https://github.com/mochajs/mocha/issues/3098): Update `--glob` docs ([@outsideris](https://github.com/outsideris))
386
+ - [#3212](https://github.com/mochajs/mocha/pull/3212): Update [Wallaby.js](https://wallabyjs.com)-related docs ([@ArtemGovorov](https://github.com/ArtemGovorov))
387
+ - [#3205](https://github.com/mochajs/mocha/pull/3205): Remove outdated cruft ([@boneskull](https://github.com/boneskull))
388
+
389
+ ## :nut_and_bolt: Other
390
+
391
+ - [#3224](https://github.com/mochajs/mocha/pull/3224): Add proper Wallaby.js config ([@ArtemGovorov](https://github.com/ArtemGovorov))
392
+ - [#3230](https://github.com/mochajs/mocha/pull/3230): Update copyright year ([@josephlin55555](https://github.com/josephlin55555))
393
+
394
+ # 5.0.0 / 2018-01-17
395
+
396
+ Mocha starts off 2018 right by again dropping support for _unmaintained rubbish_.
397
+
398
+ Welcome [@vkarpov15](https://github.com/vkarpov15) to the team!
399
+
400
+ ## :boom: Breaking Changes
401
+
402
+ - **[#3148](https://github.com/mochajs/mocha/issues/3148): Drop support for IE9 and IE10** ([@Bamieh](https://github.com/Bamieh))
403
+ Practically speaking, only code which consumes (through bundling or otherwise) the userland [buffer](https://npm.im/buffer) module should be affected. However, Mocha will no longer test against these browsers, nor apply fixes for them.
404
+
405
+ ## :tada: Enhancements
406
+
407
+ - [#3181](https://github.com/mochajs/mocha/issues/3181): Add useful new `--file` command line argument ([documentation](https://mochajs.org/#--file-file)) ([@hswolff](https://github.com/hswolff))
408
+
409
+ ## :bug: Fixes
410
+
411
+ - [#3187](https://github.com/mochajs/mocha/issues/3187): Fix inaccurate test duration reporting ([@FND](https://github.com/FND))
412
+ - [#3202](https://github.com/mochajs/mocha/pull/3202): Fix bad markup in HTML reporter ([@DanielRuf](https://github.com/DanielRuf))
413
+
414
+ ## :sunglasses: Developer Experience
415
+
416
+ - [#2352](https://github.com/mochajs/mocha/issues/2352): Ditch GNU Make for [nps](https://npm.im/nps) to manage scripts ([@TedYav](https://github.com/TedYav))
417
+
418
+ ## :book: Documentation
419
+
420
+ - [#3137](https://github.com/mochajs/mocha/issues/3137): Add missing `--no-timeouts` docs ([@dfberry](https://github.com/dfberry))
421
+ - [#3134](https://github.com/mochajs/mocha/issues/3134): Improve `done()` callback docs ([@maraisr](https://github.com/maraisr))
422
+ - [#3135](https://github.com/mochajs/mocha/issues/3135): Fix cross-references ([@vkarpov15](https://github.com/vkarpov15))
423
+ - [#3163](https://github.com/mochajs/mocha/pull/3163): Fix tpyos ([@tbroadley](https://github.com/tbroadley))
424
+ - [#3177](https://github.com/mochajs/mocha/pull/3177): Tweak `README.md` organization ([@xxczaki](https://github.com/xxczaki))
425
+ - Misc updates ([@boneskull](https://github.com/boneskull))
426
+
427
+ ## :nut_and_bolt: Other
428
+
429
+ - [#3118](https://github.com/mochajs/mocha/issues/3118): Move TextMate Integration to [its own repo](https://github.com/mochajs/mocha.tmbundle) ([@Bamieh](https://github.com/Bamieh))
430
+ - [#3185](https://github.com/mochajs/mocha/issues/3185): Add Node.js v9 to build matrix; remove v7 ([@xxczaki](https://github.com/xxczaki))
431
+ - [#3172](https://github.com/mochajs/mocha/issues/3172): Markdown linting ([@boneskull](https://github.com/boneskull))
432
+ - Test & Netlify updates ([@Munter](https://github.com/munter), [@boneskull](https://github.com/boneskull))
433
+
434
+ # 4.1.0 / 2017-12-28
435
+
436
+ This is mainly a "housekeeping" release.
437
+
438
+ Welcome [@Bamieh](https://github.com/Bamieh) and [@xxczaki](https://github.com/xxczaki) to the team!
439
+
440
+ ## :bug: Fixes
441
+
442
+ - [#2661](https://github.com/mochajs/mocha/issues/2661): `progress` reporter now accepts reporter options ([@canoztokmak](https://github.com/canoztokmak))
443
+ - [#3142](https://github.com/mochajs/mocha/issues/3142): `xit` in `bdd` interface now properly returns its `Test` object ([@Bamieh](https://github.com/Bamieh))
444
+ - [#3075](https://github.com/mochajs/mocha/pull/3075): Diffs now computed eagerly to avoid misinformation when reported ([@abrady0](https://github.com/abrady0))
445
+ - [#2745](https://github.com/mochajs/mocha/issues/2745): `--help` will now help you even if you have a `mocha.opts` ([@Zarel](https://github.com/Zarel))
446
+
447
+ ## :tada: Enhancements
448
+
449
+ - [#2514](https://github.com/mochajs/mocha/issues/2514): The `--no-diff` flag will completely disable diff output ([@CapacitorSet](https://github.com/CapacitorSet))
450
+ - [#3058](https://github.com/mochajs/mocha/issues/3058): All "setters" in Mocha's API are now also "getters" if called without arguments ([@makepanic](https://github.com/makepanic))
451
+
452
+ ## :book: Documentation
453
+
454
+ - [#3170](https://github.com/mochajs/mocha/pull/3170): Optimization and site speed improvements ([@Munter](https://github.com/munter))
455
+ - [#2987](https://github.com/mochajs/mocha/issues/2987): Moved the old [site repo](https://github.com/mochajs/mochajs.github.io) into the main repo under `docs/` ([@boneskull](https://github.com/boneskull))
456
+ - [#2896](https://github.com/mochajs/mocha/issues/2896): Add [maintainer guide](https://github.com/mochajs/mocha/blob/master/MAINTAINERS.md) ([@boneskull](https://github.com/boneskull))
457
+ - Various fixes and updates ([@xxczaki](https://github.com/xxczaki), [@maty21](https://github.com/maty21), [@leedm777](https://github.com/leedm777))
458
+
459
+ ## :nut_and_bolt: Other
460
+
461
+ - Test improvements and fixes ([@eugenet8k](https://github.com/eugenet8k), [@ngeor](https://github.com/ngeor), [@38elements](https://github.com/38elements), [@Gerhut](https://github.com/Gerhut), [@ScottFreeCode](https://github.com/ScottFreeCode), [@boneskull](https://github.com/boneskull))
462
+ - Refactoring and cruft excision ([@38elements](https://github.com/38elements), [@Bamieh](https://github.com/Bamieh), [@finnigantime](https://github.com/finnigantime), [@boneskull](https://github.com/boneskull))
463
+
464
+ # 4.0.1 / 2017-10-05
465
+
466
+ ## :bug: Fixes
467
+
468
+ - [#3051](https://github.com/mochajs/mocha/pull/3051): Upgrade Growl to v1.10.3 to fix its [peer dep problems](https://github.com/tj/node-growl/pull/68) ([@dpogue](https://github.com/dpogue))
469
+
470
+ # 4.0.0 / 2017-10-02
471
+
472
+ You might want to read this before filing a new bug! :stuck_out_tongue_closed_eyes:
473
+
474
+ ## :boom: Breaking Changes
475
+
476
+ For more info, please [read this article](https://boneskull.com/mocha-v4-nears-release/).
477
+
478
+ ### Compatibility
479
+
480
+ - [#3016](https://github.com/mochajs/mocha/issues/3016): Drop support for unmaintained versions of Node.js ([@boneskull](https://github.com/boneskull)):
481
+ - 0.10.x
482
+ - 0.11.x
483
+ - 0.12.x
484
+ - iojs (any)
485
+ - 5.x.x
486
+ - [#2979](https://github.com/mochajs/mocha/issues/2979): Drop support for non-ES5-compliant browsers ([@boneskull](https://github.com/boneskull)):
487
+ - IE7
488
+ - IE8
489
+ - PhantomJS 1.x
490
+ - [#2615](https://github.com/mochajs/mocha/issues/2615): Drop Bower support; old versions (3.x, etc.) will remain available ([@ScottFreeCode](https://github.com/ScottFreeCode), [@boneskull](https://github.com/boneskull))
491
+
492
+ ### Default Behavior
493
+
494
+ - [#2879](https://github.com/mochajs/mocha/issues/2879): By default, Mocha will no longer force the process to exit once all tests complete. This means any test code (or code under test) which would normally prevent `node` from exiting will do so when run in Mocha. Supply the `--exit` flag to revert to pre-v4.0.0 behavior ([@ScottFreeCode](https://github.com/ScottFreeCode), [@boneskull](https://github.com/boneskull))
495
+
496
+ ### Reporter Output
497
+
498
+ - [#2095](https://github.com/mochajs/mocha/issues/2095): Remove `stdout:` prefix from browser reporter logs ([@skeggse](https://github.com/skeggse))
499
+ - [#2295](https://github.com/mochajs/mocha/issues/2295): Add separator in "unified diff" output ([@olsonpm](https://github.com/olsonpm))
500
+ - [#2686](https://github.com/mochajs/mocha/issues/2686): Print failure message when `--forbid-pending` or `--forbid-only` is specified ([@ScottFreeCode](https://github.com/ScottFreeCode))
501
+ - [#2814](https://github.com/mochajs/mocha/pull/2814): Indent contexts for better readability when reporting failures ([@charlierudolph](https://github.com/charlierudolph))
502
+
503
+ ## :-1: Deprecations
504
+
505
+ - [#2493](https://github.com/mochajs/mocha/issues/2493): The `--compilers` command-line option is now soft-deprecated and will emit a warning on `STDERR`. Read [this](https://github.com/mochajs/mocha/wiki/compilers-deprecation) for more info and workarounds ([@ScottFreeCode](https://github.com/ScottFreeCode), [@boneskull](https://github.com/boneskull))
506
+
507
+ ## :tada: Enhancements
508
+
509
+ - [#2628](https://github.com/mochajs/mocha/issues/2628): Allow override of default test suite name in XUnit reporter ([@ngeor](https://github.com/ngeor))
510
+
511
+ ## :book: Documentation
512
+
513
+ - [#3020](https://github.com/mochajs/mocha/pull/3020): Link to CLA in `README.md` and `CONTRIBUTING.md` ([@skeggse](https://github.com/skeggse))
514
+
515
+ ## :nut_and_bolt: Other
516
+
517
+ - [#2890](https://github.com/mochajs/mocha/issues/2890): Speed up build by (re-)consolidating SauceLabs tests ([@boneskull](https://github.com/boneskull))
518
+
519
+ # 3.5.3 / 2017-09-11
520
+
521
+ ## :bug: Fixes
522
+
523
+ - [#3003](https://github.com/mochajs/mocha/pull/3003): Fix invalid entities in xUnit reporter first appearing in v3.5.1 ([@jkrems](https://github.com/jkrems))
524
+
525
+ # 3.5.2 / 2017-09-10
526
+
527
+ ## :bug: Fixes
528
+
529
+ - [#3001](https://github.com/mochajs/mocha/pull/3001): Fix AMD-related failures first appearing in v3.5.1 ([@boneskull](https://github.com/boneskull))
530
+
531
+ # 3.5.1 / 2017-09-09
532
+
533
+ ## :newspaper: News
534
+
535
+ - :mega: Mocha is now sponsoring [PDXNode](http://pdxnode.org)! If you're in the [Portland](https://wikipedia.org/wiki/Portland,_Oregon) area, come check out the monthly talks and hack nights!
536
+
537
+ ## :bug: Fixes
538
+
539
+ - [#2997](https://github.com/mochajs/mocha/pull/2997): Fix missing `xit` export for "require" interface ([@solodynamo](https://github.com/solodynamo))
540
+ - [#2957](https://github.com/mochajs/mocha/pull/2957): Fix unicode character handling in XUnit reporter failures ([@jkrems](https://github.com/jkrems))
541
+
542
+ ## :nut_and_bolt: Other
543
+
544
+ - [#2986](https://github.com/mochajs/mocha/pull/2986): Add issue and PR templates ([@kungapal](https://github.com/kungapal))
545
+ - [#2918](https://github.com/mochajs/mocha/pull/2918): Drop bash dependency for glob-related tests ([@ScottFreeCode](https://github.com/ScottFreeCode))
546
+ - [#2922](https://github.com/mochajs/mocha/pull/2922): Improve `--compilers` coverage ([@ScottFreeCode](https://github.com/ScottFreeCode))
547
+ - [#2981](https://github.com/mochajs/mocha/pull/2981): Fix tpyos and spelling errors ([@jsoref](https://github.com/jsoref))
548
+
549
+ # 3.5.0 / 2017-07-31
550
+
551
+ ## :newspaper: News
552
+
553
+ - Mocha now has a [code of conduct](https://github.com/mochajs/mocha/blob/master/.github/CODE_OF_CONDUCT.md) (thanks [@kungapal](https://github.com/kungapal)!).
554
+ - Old issues and PRs are now being marked "stale" by [Probot's "Stale" plugin](https://github.com/probot/stale). If an issue is marked as such, and you would like to see it remain open, simply add a new comment to the ticket or PR.
555
+ - **WARNING**: Support for non-ES5-compliant environments will be dropped starting with version 4.0.0 of Mocha!
556
+
557
+ ## :lock: Security Fixes
558
+
559
+ - [#2860](https://github.com/mochajs/mocha/pull/2860): Address [CVE-2015-8315](https://nodesecurity.io/advisories/46) via upgrade of [debug](https://npm.im/debug) ([@boneskull](https://github.com/boneskull))
560
+
561
+ ## :tada: Enhancements
562
+
563
+ - [#2696](https://github.com/mochajs/mocha/pull/2696): Add `--forbid-only` and `--forbid-pending` flags. Use these in CI or hooks to ensure tests aren't accidentally being skipped! ([@charlierudolph](https://github.com/charlierudolph))
564
+ - [#2813](https://github.com/mochajs/mocha/pull/2813): Support Node.js 8's `--napi-modules` flag ([@jupp0r](https://github.com/jupp0r))
565
+
566
+ ## :nut_and_bolt: Other
567
+
568
+ - Various CI-and-test-related fixes and improvements ([@boneskull](https://github.com/boneskull), [@dasilvacontin](https://github.com/dasilvacontin), [@PopradiArpad](https://github.com/PopradiArpad), [@Munter](https://github.com/munter), [@ScottFreeCode](https://github.com/ScottFreeCode))
569
+ - "Officially" support Node.js 8 ([@elergy](https://github.com/elergy))
570
+
571
+ # 3.4.2 / 2017-05-24
572
+
573
+ ## :bug: Fixes
574
+
575
+ - [#2802](https://github.com/mochajs/mocha/issues/2802): Remove call to deprecated `os.tmpDir` ([@makepanic](https://github.com/makepanic))
576
+ - [#2820](https://github.com/mochajs/mocha/pull/2820): Eagerly set `process.exitCode` ([@chrisleck](https://github.com/chrisleck))
577
+
578
+ ## :nut_and_bolt: Other
579
+
580
+ - [#2807](https://github.com/mochajs/mocha/pull/2807): Move linting into an npm script ([@Munter](https://github.com/munter))
581
+
582
+ # 3.4.1 / 2017-05-14
583
+
584
+ Fixed a publishing mishap with git's autocrlf settings.
585
+
586
+ # 3.4.0 / 2017-05-14
587
+
588
+ Mocha is now moving to a quicker release schedule: when non-breaking changes are merged, a release should happen that week.
589
+
590
+ This week's highlights:
591
+
592
+ - `allowUncaught` added to commandline as `--allow-uncaught` (and bugfixed)
593
+ - warning-related Node flags
594
+
595
+ ## :tada: Enhancements
596
+
597
+ - [#2793](https://github.com/mochajs/mocha/pull/2793), [#2697](https://github.com/mochajs/mocha/pull/2697): add --allowUncaught to Node.js ([@lrowe](https://github.com/lrowe))
598
+ - [#2733](https://github.com/mochajs/mocha/pull/2733): Add `--no-warnings` and `--trace-warnings` flags ([@sonicdoe](https://github.com/sonicdoe))
599
+
600
+ ## :bug: Fixes
601
+
602
+ - [#2793](https://github.com/mochajs/mocha/pull/2793), [#2697](https://github.com/mochajs/mocha/pull/2697): fix broken allowUncaught ([@lrowe](https://github.com/lrowe))
603
+
604
+ ## :nut_and_bolt: Other
605
+
606
+ - [#2778](https://github.com/mochajs/mocha/pull/2778): Add license report and scan status ([@xizhao](https://github.com/xizhao))
607
+ - [#2794](https://github.com/mochajs/mocha/pull/2794): no special case for macOS running Karma locally ([@boneskull](https://github.com/boneskull))
608
+ - [#2795](https://github.com/mochajs/mocha/pull/2795): reverts use of semistandard directly ([#2648](https://github.com/mochajs/mocha/pull/2648)) ([@boneskull](https://github.com/boneskull))
609
+
610
+ # 3.3.0 / 2017-04-24
611
+
612
+ Thanks to all our contributors, maintainers, sponsors, and users! ❤️
613
+
614
+ As highlights:
615
+
616
+ - We've got coverage now!
617
+ - Testing is looking less flaky \\o/.
618
+ - No more nitpicking about "mocha.js" build on PRs.
619
+
620
+ ## :tada: Enhancements
621
+
622
+ - [#2659](https://github.com/mochajs/mocha/pull/2659): Adds support for loading reporter from an absolute or relative path ([@sul4bh](https://github.com/sul4bh))
623
+ - [#2769](https://github.com/mochajs/mocha/pull/2769): Support `--inspect-brk` on command-line ([@igwejk](https://github.com/igwejk))
624
+
625
+ ## :bug: Fixes
626
+
627
+ - [#2662](https://github.com/mochajs/mocha/pull/2662): Replace unicode chars w/ hex codes in HTML reporter ([@rotemdan](https://github.com/rotemdan))
628
+
629
+ ## :mag: Coverage
630
+
631
+ - [#2672](https://github.com/mochajs/mocha/pull/2672): Add coverage for node tests ([@c089](https://github.com/c089), [@Munter](https://github.com/munter))
632
+ - [#2680](https://github.com/mochajs/mocha/pull/2680): Increase tests coverage for base reporter ([@epallerols](https://github.com/epallerols))
633
+ - [#2690](https://github.com/mochajs/mocha/pull/2690): Increase tests coverage for doc reporter ([@craigtaub](https://github.com/craigtaub))
634
+ - [#2701](https://github.com/mochajs/mocha/pull/2701): Increase tests coverage for landing, min, tap and list reporters ([@craigtaub](https://github.com/craigtaub))
635
+ - [#2691](https://github.com/mochajs/mocha/pull/2691): Increase tests coverage for spec + dot reporters ([@craigtaub](https://github.com/craigtaub))
636
+ - [#2698](https://github.com/mochajs/mocha/pull/2698): Increase tests coverage for xunit reporter ([@craigtaub](https://github.com/craigtaub))
637
+ - [#2699](https://github.com/mochajs/mocha/pull/2699): Increase tests coverage for json-stream, markdown and progress reporters ([@craigtaub](https://github.com/craigtaub))
638
+ - [#2703](https://github.com/mochajs/mocha/pull/2703): Cover .some() function in utils.js with tests ([@seppevs](https://github.com/seppevs))
639
+ - [#2773](https://github.com/mochajs/mocha/pull/2773): Add tests for loading reporters w/ relative/absolute paths ([@sul4bh](https://github.com/sul4bh))
640
+
641
+ ## :nut_and_bolt: Other
642
+
643
+ - Remove bin/.eslintrc; ensure execs are linted ([@boneskull](https://github.com/boneskull))
644
+ - [#2542](https://github.com/mochajs/mocha/issues/2542): Expand CONTRIBUTING.md ([@boneskull](https://github.com/boneskull))
645
+ - [#2660](https://github.com/mochajs/mocha/pull/2660): Double timeouts on integration tests ([@Munter](https://github.com/munter))
646
+ - [#2653](https://github.com/mochajs/mocha/pull/2653): Update copyright year ([@Scottkao85], [@Munter](https://github.com/munter))
647
+ - [#2621](https://github.com/mochajs/mocha/pull/2621): Update dependencies to enable Greenkeeper ([@boneskull](https://github.com/boneskull), [@greenkeeper](https://github.com/greenkeeper))
648
+ - [#2625](https://github.com/mochajs/mocha/pull/2625): Use trusty container in travis-ci; use "artifacts" addon ([@boneskull](https://github.com/boneskull))
649
+ - [#2670](https://github.com/mochajs/mocha/pull/2670): doc(CONTRIBUTING): fix link to org members ([@coderbyheart](https://github.com/coderbyheart))
650
+ - Add Mocha propaganda to README.md ([@boneskull](https://github.com/boneskull))
651
+ - [#2470](https://github.com/mochajs/mocha/pull/2470): Avoid test flake in "delay" test ([@boneskull](https://github.com/boneskull))
652
+ - [#2675](https://github.com/mochajs/mocha/pull/2675): Limit browser concurrency on sauce ([@boneskull](https://github.com/boneskull))
653
+ - [#2669](https://github.com/mochajs/mocha/pull/2669): Use temporary test-only build of mocha.js for browsers tests ([@Munter](https://github.com/munter))
654
+ - Fix "projects" link in README.md ([@boneskull](https://github.com/boneskull))
655
+ - [#2678](https://github.com/mochajs/mocha/pull/2678): Chore(Saucelabs): test on IE9, IE10 and IE11 ([@coderbyheart](https://github.com/coderbyheart))
656
+ - [#2648](https://github.com/mochajs/mocha/pull/2648): Use `semistandard` directly ([@kt3k](https://github.com/kt3k))
657
+ - [#2727](https://github.com/mochajs/mocha/pull/2727): Make the build reproducible ([@lamby](https://github.com/lamby))
658
+
659
+ # 3.2.0 / 2016-11-24
660
+
661
+ ## :newspaper: News
662
+
663
+ ### Mocha is now a JS Foundation Project!
664
+
665
+ Mocha is proud to have joined the [JS Foundation](https://js.foundation). For more information, [read the announcement](https://js.foundation/announcements/2016/10/17/Linux-Foundation-Unites-JavaScript-Community-Open-Web-Development/).
666
+
667
+ ### Contributor License Agreement
668
+
669
+ Under the foundation, all contributors to Mocha must sign the [JS Foundation CLA](https://js.foundation/CLA/) before their code can be merged. When sending a PR--if you have not already signed the CLA--a friendly bot will ask you to do so.
670
+
671
+ Mocha remains licensed under the [MIT license](https://github.com/mochajs/mocha/blob/master/LICENSE).
672
+
673
+ ## :bug: Bug Fix
674
+
675
+ - [#2535](https://github.com/mochajs/mocha/issues/2535): Fix crash when `--watch` encounters broken symlinks ([@villesau](https://github.com/villesau))
676
+ - [#2593](https://github.com/mochajs/mocha/pull/2593): Fix (old) regression; incorrect symbol shown in `list` reporter ([@Aldaviva](https://github.com/Aldaviva))
677
+ - [#2584](https://github.com/mochajs/mocha/issues/2584): Fix potential error when running XUnit reporter ([@vobujs](https://github.com/vobujs))
678
+
679
+ ## :tada: Enhancement
680
+
681
+ - [#2294](https://github.com/mochajs/mocha/issues/2294): Improve timeout error messaging ([@jeversmann](https://github.com/jeversmann), [@boneskull](https://github.com/boneskull))
682
+ - [#2520](https://github.com/mochajs/mocha/pull/2520): Add info about `--inspect` flag to CLI help ([@ughitsaaron](https://github.com/ughitsaaron))
683
+
684
+ ## :nut_and_bolt: Other
685
+
686
+ - [#2570](https://github.com/mochajs/mocha/issues/2570): Use [karma-mocha](https://npmjs.com/package/karma-mocha) proper ([@boneskull](https://github.com/boneskull))
687
+ - Licenses updated to reflect new copyright, add link to license and browser matrix to `README.md` ([@boneskull](https://github.com/boneskull), [@ScottFreeCode](https://github.com/ScottFreeCode), [@dasilvacontin](https://github.com/dasilvacontin))
688
+
689
+ Thanks to all our contributors, sponsors and backers! Keep on the lookout for a public roadmap and new contribution guide coming soon.
690
+
691
+ # 3.1.2 / 2016-10-10
692
+
693
+ ## :bug: Bug Fix
694
+
695
+ - [#2528](https://github.com/mochajs/mocha/issues/2528): Recovery gracefully if an `Error`'s `stack` property isn't writable ([@boneskull](https://github.com/boneskull))
696
+
697
+ # 3.1.1 / 2016-10-09
698
+
699
+ ## :bug: Bug Fix
700
+
701
+ - [#1417](https://github.com/mochajs/mocha/issues/1417): Don't report `done()` was called multiple times when it wasn't ([@frankleonrose](https://github.com/frankleonrose))
702
+
703
+ ## :nut_and_bolt: Other
704
+
705
+ - [#2490](https://github.com/mochajs/mocha/issues/2490): Lint with [semistandard](https://npmjs.com/package/semistandard) config ([@makepanic](https://github.com/makepanic))
706
+ - [#2525](https://github.com/mochajs/mocha/issues/2525): Lint all `.js` files ([@boneskull](https://github.com/boneskull))
707
+ - [#2524](https://github.com/mochajs/mocha/issues/2524): Provide workaround for developers unable to run browser tests on macOS Sierra ([@boneskull](https://github.com/boneskull))
708
+
709
+ # 3.1.0 / 2016-09-27
710
+
711
+ ## :tada: Enhancement
712
+
713
+ - [#2357](https://github.com/mochajs/mocha/issues/2357): Support `--inspect` on command-line ([@simov](https://github.com/simov))
714
+ - [#2194](https://github.com/mochajs/mocha/issues/2194): Human-friendly error if no files are matched on command-line ([@Munter](https://github.com/munter))
715
+ - [#1744](https://github.com/mochajs/mocha/issues/1744): Human-friendly error if a Suite has no callback (BDD/TDD only) ([@anton](https://github.com/anton))
716
+
717
+ ## :bug: Bug Fix
718
+
719
+ - [#2488](https://github.com/mochajs/mocha/issues/2488): Fix case in which _variables beginning with lowercase "D"_ may not have been reported properly as global leaks ([@JustATrick](https://github.com/JustATrick)) :laughing:
720
+ - [#2465](https://github.com/mochajs/mocha/issues/2465): Always halt execution in async function when `this.skip()` is called ([@boneskull](https://github.com/boneskull))
721
+ - [#2445](https://github.com/mochajs/mocha/pull/2445): Exits with expected code 130 when `SIGINT` encountered; exit code can no longer rollover at 256 ([@Munter](https://github.com/munter))
722
+ - [#2315](https://github.com/mochajs/mocha/issues/2315): Fix uncaught TypeError thrown from callback stack ([@1999](https://github.com/1999))
723
+ - Fix broken `only()`/`skip()` in IE7/IE8 ([@boneskull](https://github.com/boneskull))
724
+ - [#2502](https://github.com/mochajs/mocha/issues/2502): Fix broken stack trace filter on Node.js under Windows ([@boneskull](https://github.com/boneskull))
725
+ - [#2496](https://github.com/mochajs/mocha/issues/2496): Fix diff output for objects instantiated with `String` constructor ([more](https://youtrack.jetbrains.com/issue/WEB-23383)) ([@boneskull](https://github.com/boneskull))
726
+
727
+ # 3.0.2 / 2016-08-08
728
+
729
+ ## :bug: Bug Fix
730
+
731
+ - [#2424](https://github.com/mochajs/mocha/issues/2424): Fix error loading Mocha via Require.js ([@boneskull](https://github.com/boneskull))
732
+ - [#2417](https://github.com/mochajs/mocha/issues/2417): Fix execution of _deeply_ nested `describe.only()` suites ([@not-an-aardvark](https://github.com/not-an-aardvark))
733
+ - Remove references to `json-cov` and `html-cov` reporters in CLI ([@boneskull](https://github.com/boneskull))
734
+
735
+ # 3.0.1 / 2016-08-03
736
+
737
+ ## :bug: Bug Fix
738
+
739
+ - [#2406](https://github.com/mochajs/mocha/issues/2406): Restore execution of nested `describe.only()` suites ([@not-an-aardvark](https://github.com/not-an-aardvark))
740
+
741
+ # 3.0.0 / 2016-07-31
742
+
743
+ ## :boom: Breaking Changes
744
+
745
+ - :warning: Due to the increasing difficulty of applying security patches made within its dependency tree, as well as looming incompatibilities with Node.js v7.0, **Mocha no longer supports Node.js v0.8**.
746
+
747
+ - :warning: **Mocha may no longer be installed by versions of `npm` less than `1.4.0`.** Previously, this requirement only affected Mocha's development dependencies. In short, this allows Mocha to depend on packages which have dependencies fixed to major versions (`^`).
748
+
749
+ - `.only()` is no longer "fuzzy", can be used multiple times, and generally just works like you think it should. :joy:
750
+
751
+ - To avoid common bugs, when a test injects a callback function (suggesting asynchronous execution), calls it, _and_ returns a `Promise`, Mocha will now throw an exception:
752
+
753
+ \```js
754
+ const assert = require('assert');
755
+
756
+ it('should complete this test', function (done) {
757
+ return new Promise(function (resolve) {
758
+ assert.ok(true);
759
+ resolve();
760
+ })
761
+ .then(done);
762
+ });
763
+ \```
764
+
765
+ The above test will fail with `Error: Resolution method is overspecified. Specify a callback *or* return a Promise; not both.`.
766
+
767
+ - When a test timeout value _greater than_ `2147483648` is specified in any context (`--timeout`, `mocha.setup()`, per-suite, per-test, etc.), the timeout will be _disabled_ and the test(s) will be allowed to run indefinitely. This is equivalent to specifying a timeout value of `0`. See [MDN](https://developer.mozilla.org/docs/Web/API/WindowTimers/setTimeout#Maximum_delay_value) for reasoning.
768
+
769
+ - The `dot` reporter now uses more visually distinctive characters when indicating "pending" and "failed" tests.
770
+
771
+ - Mocha no longer supports [component](https://www.npmjs.com/package/component).
772
+
773
+ - The long-forsaken `HTMLCov` and `JSONCov` reporters--and any relationship to the "node-jscoverage" project--have been removed.
774
+
775
+ - `spec` reporter now omits leading carriage returns (`\r`) in non-TTY environment.
776
+
777
+ ## :tada: Enhancements
778
+
779
+ - [#808](https://github.com/mochajs/mocha/issues/808): Allow regular-expression-like strings in `--grep` and browser's `grep` querystring; enables flags such as `i` for case-insensitive matches and `u` for unicode. ([@a8m](https://github.com/a8m))
780
+ - [#2000](https://github.com/mochajs/mocha/pull/2000): Use distinctive characters in `dot` reporter; `,` will denote a "pending" test and `!` will denote a "failing" test. ([@elliottcable](https://github.com/elliottcable))
781
+ - [#1632](https://github.com/mochajs/mocha/issues/1632): Throw a useful exception when a suite or test lacks a title. ([@a8m](https://github.com/a8m))
782
+ - [#1481](https://github.com/mochajs/mocha/issues/1481): Better `.only()` behavior. ([@a8m](https://github.com/a8m))
783
+ - [#2334](https://github.com/mochajs/mocha/issues/2334): Allow `this.skip()` in async tests and hooks. ([@boneskull](https://github.com/boneskull))
784
+ - [#1320](https://github.com/mochajs/mocha/pull/1320): Throw a useful exception when test resolution method is overspecified. ([@jugglinmike](https://github.com/jugglinmike))
785
+ - [#2364](https://github.com/mochajs/mocha/pull/2364): Support `--preserve-symlinks`. ([@rosswarren](https://github.com/rosswarren))
786
+
787
+ ## :bug: Bug Fixes
788
+
789
+ - [#2259](https://github.com/mochajs/mocha/pull/2259): Restore ES3 compatibility. Specifically, support an environment lacking `Date.prototype.toISOString()`, `JSON`, or has a non-standard implementation of `JSON`. ([@ndhoule](https://github.com/ndhoule), [@boneskull](https://github.com/boneskull))
790
+ - [#2286](https://github.com/mochajs/mocha/issues/2286): Fix `after()` failing to execute if test skipped using `this.skip()` in `beforeEach()`; no longer marks the entire suite as "pending". ([@dasilvacontin](https://github.com/dasilvacontin), [@boneskull](https://github.com/boneskull))
791
+ - [#2208](https://github.com/mochajs/mocha/pull/2208): Fix function name display in `markdown` and `html` (browser) reporters. ([@ScottFreeCode](https://github.com/ScottFreeCode))
792
+ - [#2299](https://github.com/mochajs/mocha/pull/2299): Fix progress bar in `html` (browser) reporter. ([@AviVahl](https://github.com/avivahl))
793
+ - [#2307](https://github.com/mochajs/mocha/pull/2307): Fix `doc` reporter crashing when test fails. ([@jleyba](https://github.com/jleyba))
794
+ - [#2323](https://github.com/mochajs/mocha/issues/2323): Ensure browser entry point (`browser-entry.js`) is published to npm (for use with bundlers). ([@boneskull](https://github.com/boneskull))
795
+ - [#2310](https://github.com/mochajs/mocha/issues/2310): Ensure custom reporter with an absolute path works in Windows. ([@silentcloud](https://github.com/silentcloud))
796
+ - [#2311](https://github.com/mochajs/mocha/issues/2311): Fix problem wherein calling `this.slow()` without a value would blast any previously set value. ([@boneskull](https://github.com/boneskull))
797
+ - [#1813](https://github.com/mochajs/mocha/issues/1813): Ensure Mocha's own test suite will run in Windows. ([@tswaters](https://github.com/tswaters), [@TimothyGu](https://github.com/timothygu), [@boneskull](https://github.com/boneskull))
798
+ - [#2317](https://github.com/mochajs/mocha/issues/2317): Ensure all interfaces are displayed in `--help` on CLI. ([@ScottFreeCode](https://github.com/ScottFreeCode))
799
+ - [#1644](https://github.com/mochajs/mocha/issues/1644): Don't exhibit undefined behavior when calling `this.timeout()` with very large values ([@callumacrae](https://github.com/callumacrae), [@boneskull](https://github.com/boneskull))
800
+ - [#2361](https://github.com/mochajs/mocha/pull/2361): Don't truncate name of thrown anonymous exception. ([@boneskull](https://github.com/boneskull))
801
+ - [#2367](https://github.com/mochajs/mocha/pull/2367): Fix invalid CSS. ([@bensontrent](https://github.com/bensontrent))
802
+ - [#2401](https://github.com/mochajs/mocha/pull/2401): Remove carriage return before each test line in spec reporter. ([@Munter](https://github.com/munter))
803
+
804
+ ## :nut_and_bolt: Other
805
+
806
+ - Upgrade production dependencies to address security advisories (and because now we can): `glob`, `commander`, `escape-string-regexp`, and `supports-color`. ([@boneskull](https://github.com/boneskull), [@RobLoach](https://github.com/robloach))
807
+ - Add Windows to CI. ([@boneskull](https://github.com/boneskull), [@TimothyGu](https://github.com/timothygu))
808
+ - Ensure appropriate `engines` field in `package.json`. ([@shinnn](https://github.com/shinnn), [@boneskull](https://github.com/boneskull))
809
+ - [#2348](https://github.com/mochajs/mocha/issues/2348): Upgrade ESLint to v2 ([@anthony-redfox](https://github.com/anthony-redfox))
810
+
811
+ We :heart: our [backers and sponsors](https://opencollective.com/mochajs)!
812
+
813
+ :shipit:
814
+
815
+ # 2.5.3 / 2016-05-25
816
+
817
+ - [#2112](https://github.com/mochajs/mocha/pull/2112) - Fix HTML reporter regression causing duplicate error output ([@danielstjules](https://github.com/danielstjules) via [`6d24063`](https://github.com/mochajs/mocha/commit/6d24063))
818
+ - [#2119](https://github.com/mochajs/mocha/pull/2119) - Make HTML reporter failure/passed links preventDefault to avoid SPA's hash navigation ([@jimenglish81](https://github.com/jimenglish81) via [`9e93efc`](https://github.com/mochajs/mocha/commit/9e93efc))
819
+
820
+ # 2.5.2 / 2016-05-24
821
+
822
+ - [#2178](https://github.com/mochajs/mocha/pull/2178) - Avoid double and triple xUnit XML escaping ([@graingert](https://github.com/graingert) via [`49b5ff1`](https://github.com/mochajs/mocha/commit/49b5ff1))
823
+
824
+ # 2.5.1 / 2016-05-23
825
+
826
+ - Fix [to-iso-string](https://npmjs.com/package/to-iso-string) dependency ([@boneskull](https://github.com/boneskull) via [`bd9450b`](https://github.com/mochajs/mocha/commit/bd9450b))
827
+
828
+ Thanks [**@entertainyou**](https://github.com/entertainyou), [**@SimenB**](https://github.com/SimenB), [**@just-paja**](https://github.com/just-paja) for the heads-up.
829
+
830
+ # 2.5.0 / 2016-05-23
831
+
832
+ This has been awhile coming! We needed to feel confident that the next release wouldn't break browser compatibility (e.g. the last few patch releases).
833
+
834
+ ## Browser Tests in CI
835
+
836
+ We now run unit tests against PhantomJS v1.x and an assortment of browsers on [SauceLabs](https://saucelabs.com), including:
837
+
838
+ - Internet Explorer v8.0
839
+ - Chrome (latest)
840
+ - Firefox (latest)
841
+ - Safari (latest)
842
+ - Microsoft Edge (latest)
843
+
844
+ To accomplish this, we now run Mocha's unit tests (and a handful of integration tests) via [Karma](https://npmjs.com/package/karma) and a modified [karma-mocha](https://npmjs.com/package/karma-mocha). Along the way, we had to solve issue [#880](https://github.com/mochajs/mocha/issues/880) (apologies to [**@mderijcke**](https://github.com/mderijcke) and [**@sukima**](https://github.com/sukima) who had PRs addressing this), as well as replace most usages of [should](https://npmjs.com/package/should) with [expect.js](https://npmjs.com/package/expect.js) for IE8.
845
+
846
+ Going forward, when sending PRs, your code will _only_ run against PhantomJS v1.x (and not hit SauceLabs) [because security](https://docs.travis-ci.com/user/pull-requests/#Security-Restrictions-when-testing-Pull-Requests).
847
+
848
+ ## Node.js 6.x
849
+
850
+ Node.js 6.x "just worked" before, but now it's in the CI matrix, so it's "officially" supported. Mocha _still retains support_ for Node.js 0.8.x.
851
+
852
+ ## "Minor" Release
853
+
854
+ You'll see mostly bug fixes below, but also a couple features--as such, it's a "minor" release.
855
+
856
+ ## TYVM
857
+
858
+ Thanks to everyone who contributed, and our fabulous [sponsors and backers](https://opencollective.com/mochajs)!
859
+
860
+ - [#2079](https://github.com/mochajs/mocha/issues/2079) - Add browser checks to CI; update [browserify](https://npmjs.com/package/browserify) to v13.0.0 ([@dasilvacontin](https://github.com/dasilvacontin), [@ScottFreeCode](https://github.com/ScottFreeCode), [@boneskull](https://github.com/boneskull) via [`c04c1d7`](https://github.com/mochajs/mocha/commit/c04c1d7), [`0b1e9b3`](https://github.com/mochajs/mocha/commit/0b1e9b3), [`0dde0fa`](https://github.com/mochajs/mocha/commit/0dde0fa), [`f8a3d86`](https://github.com/mochajs/mocha/commit/f8a3d86), [`9e8cbaa`](https://github.com/mochajs/mocha/commit/9e8cbaa))
861
+ - [#880](https://github.com/mochajs/mocha/issues/880) - Make Mocha browserifyable ([@boneskull](https://github.com/boneskull) via [`524862b`](https://github.com/mochajs/mocha/commit/524862b))
862
+ - [#2121](https://github.com/mochajs/mocha/issues/2121) - Update [glob](https://npmjs.com/package/glob) to v3.2.11 ([@astorije](https://github.com/astorije) via [`7920fc4`](https://github.com/mochajs/mocha/commit/7920fc4))
863
+ - [#2126](https://github.com/mochajs/mocha/issues/2126) - Fix dupe error messages in stack trace filter ([@Turbo87](https://github.com/Turbo87) via [`4301caa`](https://github.com/mochajs/mocha/commit/4301caa))
864
+ - [#2109](https://github.com/mochajs/mocha/issues/2109) - Fix certain diffs when objects cannot be coerced into primitives ([@joshlory](https://github.com/joshlory) via [`61fbb7f`](https://github.com/mochajs/mocha/commit/61fbb7f))
865
+ - [#1827](https://github.com/mochajs/mocha/pull/1827) - Fix TWBS/`mocha.css` collisions ([@irnc](https://github.com/irnc) via [`0543798`](https://github.com/mochajs/mocha/commit/0543798))
866
+ - [#1760](https://github.com/mochajs/mocha/issues/1760), [#1936](https://github.com/mochajs/mocha/issues/1936) - Fix `this.skip()` in HTML reporter ([@mislav](https://github.com/mislav) via [`cb4248b`](https://github.com/mochajs/mocha/commit/cb4248b))
867
+ - [#2115](https://github.com/mochajs/mocha/pull/2115) - Fix exceptions thrown from hooks in HTML reporter ([@danielstjules](https://github.com/danielstjules) via [`e290bc0`](https://github.com/mochajs/mocha/commit/e290bc0))
868
+ - [#2089](https://github.com/mochajs/mocha/issues/2089) - Handle Symbol values in `util.stringify()` ([@ryym](https://github.com/ryym) via [`ea61d05`](https://github.com/mochajs/mocha/commit/ea61d05))
869
+ - [#2097](https://github.com/mochajs/mocha/pull/2097) - Fix diff for objects overriding `Object.prototype.hasOwnProperty` ([@mantoni](https://github.com/mantoni) via [`b20fdfe`](https://github.com/mochajs/mocha/commit/b20fdfe))
870
+ - [#2101](https://github.com/mochajs/mocha/pull/2101) - Properly handle non-string "messages" thrown from assertion libraries ([@jkimbo](https://github.com/jkimbo) via [`9c41051`](https://github.com/mochajs/mocha/commit/9c41051))
871
+ - [#2124](https://github.com/mochajs/mocha/pull/2124) - Update [growl](https://npmjs.com/package/growl) ([@benjamine](https://github.com/benjamine) via [`9ae6a85`](https://github.com/mochajs/mocha/commit/9ae6a85))
872
+ - [#2162](https://github.com/mochajs/mocha/pull/2162), [#2205](https://github.com/mochajs/mocha/pull/2205) - JSDoc fixes ([@OlegTsyba](https://github.com/OlegTsyba) via [`8031f20`](https://github.com/mochajs/mocha/commit/8031f20), [@ScottFreeCode](https://github.com/ScottFreeCode) via [`f83b1d9`](https://github.com/mochajs/mocha/commit/f83b1d9))
873
+ - [#2132](https://github.com/mochajs/mocha/issues/2132) - Remove Growl-related cruft ([@julienw](https://github.com/julienw) via [`00d6469`](https://github.com/mochajs/mocha/commit/00d6469))
874
+ - [#2172](https://github.com/mochajs/mocha/pull/2172) - Add [OpenCollective](https://opencollective.com) badge, sponsors & backers ([@xdamman](https://github.com/xdamman), [@boneskull](https://github.com/boneskull) via [`caee94f`](https://github.com/mochajs/mocha/commit/caee94f))
875
+ - [#1841](https://github.com/mochajs/mocha/pull/1841) - Add new logo, banner assets ([@dasilvacontin](https://github.com/dasilvacontin) via [`00fd0e1`](https://github.com/mochajs/mocha/commit/00fd0e1))
876
+ - [#2214](https://github.com/mochajs/mocha/pull/2214) - Update `README.md` header ([@dasilvacontin](https://github.com/dasilvacontin) via [`c0f9be2`](https://github.com/mochajs/mocha/commit/c0f9be2))
877
+ - [#2236](https://github.com/mochajs/mocha/pull/2236) - Better checks for Node.js v0.8 compatibility in CI ([@dasilvacontin](https://github.com/dasilvacontin) via [`ba5637d`](https://github.com/mochajs/mocha/commit/ba5637d))
878
+ - [#2239](https://github.com/mochajs/mocha/issues/2239) - Add Node.js v6.x to CI matrix ([@boneskull](https://github.com/boneskull) via [`3904da4`](https://github.com/mochajs/mocha/commit/3904da4))
879
+
880
+ # 2.4.5 / 2016-01-28
881
+
882
+ - [#2080](https://github.com/mochajs/mocha/issues/2080), [#2078](https://github.com/mochajs/mocha/issues/2078), [#2072](https://github.com/mochajs/mocha/pull/2072), [#2073](https://github.com/mochajs/mocha/pull/2073), [#1200](https://github.com/mochajs/mocha/issues/1200) - Revert changes to console colors in changeset [1192914](https://github.com/mochajs/mocha/commit/119291449cd03a11cdeda9e37cf718a69a012896) and subsequent related changes thereafter. Restores compatibility with IE8 & PhantomJS. See also [mantoni/mochify.js#129](https://github.com/mantoni/mochify.js/issues/129) and [openlayers/ol3#4746](https://github.com/openlayers/ol3/pull/4746) ([@boneskull](https://github.com/boneskull))
883
+ - [#2082](https://github.com/mochajs/mocha/pull/2082) - Fix several test assertions ([@mislav](https://github.com/mislav))
884
+
885
+ # 2.4.4 / 2016-01-27
886
+
887
+ - [#2080](https://github.com/mochajs/mocha/issues/2080) - Fix broken RequireJS compatibility ([@boneskull](https://github.com/boneskull))
888
+
889
+ # 2.4.3 / 2016-01-27
890
+
891
+ - [#2078](https://github.com/mochajs/mocha/issues/2078) - Fix broken IE8 ([@boneskull](https://github.com/boneskull))
892
+
893
+ # 2.4.2 / 2016-01-26
894
+
895
+ - [#2053](https://github.com/mochajs/mocha/pull/2053) - Fix web worker compatibility ([@mislav](https://github.com/mislav))
896
+ - [#2072](https://github.com/mochajs/mocha/pull/2072) - Fix Windows color output ([@thedark1337](https://github.com/thedark1337))
897
+ - [#2073](https://github.com/mochajs/mocha/pull/2073) - Fix colors in `progress` and `landing` reporters ([@gyandeeps](https://github.com/gyandeeps))
898
+
899
+ # 2.4.1 / 2016-01-26
900
+
901
+ - [#2067](https://github.com/mochajs/mocha/pull/2067) - Fix HTML/doc reporter regressions ([@danielstjules](https://github.com/danielstjules))
902
+
903
+ # 2.4.0 / 2016-01-25
904
+
905
+ - [#1945](https://github.com/mochajs/mocha/pull/1945) - Correctly skip tests when skipping in suite's before() ([@ryanshawty](https://github.com/ryanshawty))
906
+ - [#2056](https://github.com/mochajs/mocha/pull/2056) - chore(license): update license year to 2016 ([@pra85](https://github.com/pra85))
907
+ - [#2048](https://github.com/mochajs/mocha/pull/2048) - Fix `this.skip` from spec with HTML reporter ([@mislav](https://github.com/mislav))
908
+ - [#2033](https://github.com/mochajs/mocha/pull/2033) - Update tests for newer versions of should.js ([@tomhughes](https://github.com/tomhughes))
909
+ - [#2037](https://github.com/mochajs/mocha/pull/2037) - Fix for memory leak caused by referenced to deferred test ([@bd82](https://github.com/bd82))
910
+ - [#2038](https://github.com/mochajs/mocha/pull/2038) - Also run Travis-CI on node.js 4 & 5 ([@bd82](https://github.com/bd82))
911
+ - [#2028](https://github.com/mochajs/mocha/pull/2028) - Remove reference to test before afterAll hook runs ([@stonelgh](https://github.com/stonelgh))
912
+ - Bump mkdirp to 0.5.1 to support strict mode ([@danielstjules](https://github.com/danielstjules))
913
+ - [#1977](https://github.com/mochajs/mocha/pull/1977) - safely stringify PhantomJS undefined value ([@ahamid](https://github.com/ahamid))
914
+ - Add the ability to retry tests ([@@longlho])
915
+ - [#1982](https://github.com/mochajs/mocha/pull/1982) - Enable --log-timer-events option [@Alaneor](https://github.com/Alaneor)
916
+ - Fix [#1980](https://github.com/mochajs/mocha/issues/1980): Load mocha.opts from bin/mocha and bin/\_mocha ([@danielstjules](https://github.com/danielstjules))
917
+ - [#1976](https://github.com/mochajs/mocha/pull/1976) - Simplify function call ([@iclanzan](https://github.com/iclanzan))
918
+ - [#1963](https://github.com/mochajs/mocha/pull/1963) - Add support --perf-basic-prof ([@robraux](https://github.com/robraux))
919
+ - [#1981](https://github.com/mochajs/mocha/pull/1981) - Fix HTML reporter handling of done and exceptions ([@Standard8](https://github.com/Standard8))
920
+ - [#1993](https://github.com/mochajs/mocha/pull/1993) - propagate "file" property for "exports" interface ([@segrey](https://github.com/segrey))
921
+ - [#1999](https://github.com/mochajs/mocha/pull/1999) - Add support for strict mode ([@tmont](https://github.com/tmont))
922
+ - [#2005](https://github.com/mochajs/mocha/pull/2005) - XUnit Reporter Writes to stdout, falls back to console.log ([@jonnyreeves](https://github.com/jonnyreeves))
923
+ - [#2021](https://github.com/mochajs/mocha/pull/2021) - Fix non ES5 compliant regexp ([@zetaben](https://github.com/zetaben))
924
+ - [#1965] - Don't double install BDD UI ([@cowboyd](https://github.com/cowboyd))
925
+ - [#1995](https://github.com/mochajs/mocha/pull/1995) - Make sure the xunit output dir exists before writing to it ([@ianwremmel](https://github.com/ianwremmel))
926
+ - Use chalk for the base reporter colors; closes [#1200](https://github.com/mochajs/mocha/issues/1200) ([@boneskull](https://github.com/boneskull))
927
+ - Fix requiring custom interfaces ([@jgkim](https://github.com/jgkim))
928
+ - [#1967](https://github.com/mochajs/mocha/pull/1967) Silence Bluebird js warnings ([@krisr](https://github.com/krisr))
929
+
930
+ # 2.3.4 / 2015-11-15
931
+
932
+ - Update debug dependency to 2.2.0
933
+ - remove duplication of mocha.opts on process.argv
934
+ - Fix typo in test/reporters/nyan.js
935
+
936
+ # 2.3.3 / 2015-09-19
937
+
938
+ - [#1875](https://github.com/mochajs/mocha/issues/1875) - Fix Markdown reporter exceeds maximum call stack size ([@danielstjules](https://github.com/danielstjules))
939
+ - [#1864](https://github.com/mochajs/mocha/issues/1864) - Fix xunit missing output with --reporter-options output ([@danielstjules](https://github.com/danielstjules))
940
+ - [#1846](https://github.com/mochajs/mocha/issues/1846) - Support all harmony flags ([@danielstjules](https://github.com/danielstjules))
941
+ - Fix fragile xunit reporter spec ([@danielstjules](https://github.com/danielstjules))
942
+ - [#1669](https://github.com/mochajs/mocha/issues/1669) - Fix catch uncaught errors outside test suite execution ([@danielstjules](https://github.com/danielstjules))
943
+ - [#1868](https://github.com/mochajs/mocha/issues/1868) - Revert jade to support npm &lt; v1.3.7 ([@danielstjules](https://github.com/danielstjules))
944
+ - [#1766](https://github.com/mochajs/mocha/issues/1766) - Don't remove modules/components from stack trace in the browser ([@danielstjules](https://github.com/danielstjules))
945
+ - [#1798](https://github.com/mochajs/mocha/issues/1798) - Fix correctly attribute mutiple done err with hooks ([@danielstjules](https://github.com/danielstjules))
946
+ - Fix use utils.reduce for IE8 compatibility ([@wsw0108](https://github.com/wsw0108))
947
+ - Some linting errors fixed by [@danielstjules](https://github.com/danielstjules)
948
+ - Call the inspect() function if message is not set ([@kevinburke](https://github.com/kevinburke))
949
+
950
+ # 2.3.2 / 2015-09-07
951
+
952
+ - [#1868](https://github.com/mochajs/mocha/issues/1868) - Fix compatibility with older versions of NPM ([@boneskull](https://github.com/boneskull))
953
+
954
+ # 2.3.1 / 2015-09-06
955
+
956
+ - [#1812](https://github.com/mochajs/mocha/issues/1812) - Fix: Bail flag causes before() hooks to be run even after a failure ([@aaroncrows])
957
+
958
+ # 2.3.0 / 2015-08-30
959
+
960
+ - [#553](https://github.com/mochajs/mocha/issues/553) - added --allowUncaught option ([@amsul](https://github.com/amsul))
961
+ - [#1490](https://github.com/mochajs/mocha/issues/1490) - Allow --async-only to be satisfied by returning a promise ([@jlai](https://github.com/jlai))
962
+ - [#1829](https://github.com/mochajs/mocha/issues/1829) - support --max-old-space-size ([@gigadude](https://github.com/gigadude))
963
+ - [#1811](https://github.com/mochajs/mocha/issues/1811) - upgrade Jade dependency ([@outsideris](https://github.com/outsideris))
964
+ - [#1769](https://github.com/mochajs/mocha/issues/1769) - Fix async hook error handling ([@ajaykodali](https://github.com/ajaykodali))
965
+ - [#1230](https://github.com/mochajs/mocha/issues/1230) - More descriptive beforeEach/afterEach messages ([@duncanbeevers](https://github.com/duncanbeevers))
966
+ - [#1787](https://github.com/mochajs/mocha/issues/1787) - Scope loading behaviour instead of using early return ([@aryeguy](https://github.com/aryeguy))
967
+ - [#1789](https://github.com/mochajs/mocha/issues/1789) - Fix: html-runner crashing ([@sunesimonsen](https://github.com/sunesimonsen))
968
+ - [#1749](https://github.com/mochajs/mocha/issues/1749) - Fix maximum call stack error on large amount of tests ([@tinganho](https://github.com/tinganho))
969
+ - [#1230](https://github.com/mochajs/mocha/issues/1230) - Decorate failed hook titles with test title ([@duncanbeevers](https://github.com/duncanbeevers))
970
+ - [#1260](https://github.com/mochajs/mocha/issues/1260) - Build using Browserify ([@ndhoule](https://github.com/ndhoule))
971
+ - [#1728](https://github.com/mochajs/mocha/issues/1728) - Don't use `__proto__` ([@ndhoule](https://github.com/ndhoule))
972
+ - [#1781](https://github.com/mochajs/mocha/issues/1781) - Fix hook error tests ([@glenjamin](https://github.com/glenjamin))
973
+ - [#1754](https://github.com/mochajs/mocha/issues/1754) - Allow boolean --reporter-options ([@papandreou](https://github.com/papandreou))
974
+ - [#1766](https://github.com/mochajs/mocha/issues/1766) - Fix overly aggressive stack suppression ([@moll](https://github.com/moll))
975
+ - [#1752](https://github.com/mochajs/mocha/issues/1752) - Avoid potential infinite loop ([@gsilk](https://github.com/gsilk))
976
+ - [#1761](https://github.com/mochajs/mocha/issues/1761) - Fix problems running under PhantomJS ([@chromakode](https://github.com/chromakode))
977
+ - [#1700](https://github.com/mochajs/mocha/issues/1700) - Fix more problems running under PhantomJS ([@jbnicolai](https://github.com/jbnicolai))
978
+ - [#1774](https://github.com/mochajs/mocha/issues/1774) - Support escaped spaces in CLI options ([@adamgruber](https://github.com/adamgruber))
979
+ - [#1687](https://github.com/mochajs/mocha/issues/1687) - Fix HTML reporter links with special chars ([@benvinegar](https://github.com/benvinegar))
980
+ - [#1359](https://github.com/mochajs/mocha/issues/1359) - Adopt code style and enforce it using ESLint ([@ndhoule](https://github.com/ndhoule) w/ assist from [@jbnicolai](https://github.com/jbnicolai) & [@boneskull](https://github.com/boneskull))
981
+ - various refactors ([@jbnicolai](https://github.com/jbnicolai))
982
+ - [#1758](https://github.com/mochajs/mocha/issues/1758) - Add cross-frame compatible Error checking ([@outdooricon](https://github.com/outdooricon))
983
+ - [#1741](https://github.com/mochajs/mocha/issues/1741) - Remove moot `version` property from bower.json ([@kkirsche](https://github.com/kkirsche))
984
+ - [#1739](https://github.com/mochajs/mocha/issues/1739) - Improve `HISTORY.md` ([@rstacruz](https://github.com/rstacruz))
985
+ - [#1730](https://github.com/mochajs/mocha/issues/1730) - Support more io.js flags ([@ryedog](https://github.com/ryedog))
986
+ - [#1349](https://github.com/mochajs/mocha/issues/1349) - Allow HTML in HTML reporter errors ([@papandreou](https://github.com/papandreou) / [@sunesimonsen](https://github.com/sunesimonsen))
987
+ - [#1572](https://github.com/mochajs/mocha/issues/1572) - Prevent default browser behavior for failure/pass links ([@jschilli](https://github.com/jschilli))
988
+ - [#1630](https://github.com/mochajs/mocha/issues/1630) - Support underscored harmony flags ([@dominicbarnes](https://github.com/dominicbarnes))
989
+ - [#1718](https://github.com/mochajs/mocha/issues/1718) - Support more harmony flags ([@slyg](https://github.com/slyg))
990
+ - [#1689](https://github.com/mochajs/mocha/issues/1689) - Add stack to JSON-stream reporter ([@jonathandelgado](https://github.com/jonathandelgado))
991
+ - [#1654](https://github.com/mochajs/mocha/issues/1654) - Fix `ReferenceError` "location is not defined" ([@jakemmarsh](https://github.com/jakemmarsh))
992
+
993
+ # 2.2.5 / 2015-05-14
994
+
995
+ - [#1699](https://github.com/mochajs/mocha/issues/1699) - Upgrade jsdiff to v1.4.0 ([@nylen](https://github.com/nylen))
996
+ - [#1648](https://github.com/mochajs/mocha/issues/1648) - fix diff background colors in the console ([@nylen](https://github.com/nylen))
997
+ - [#1327](https://github.com/mochajs/mocha/issues/1327) - fix tests running twice, a regression issue. ([#1686](https://github.com/mochajs/mocha/issues/1686), [@danielstjules](https://github.com/danielstjules))
998
+ - [#1675](https://github.com/mochajs/mocha/issues/1675) - add integration tests ([@danielstjules](https://github.com/danielstjules))
999
+ - [#1682](https://github.com/mochajs/mocha/issues/1682) - use a valid SPDX license identifier in package.json ([@kemitchell](https://github.com/kemitchell))
1000
+ - [#1660](https://github.com/mochajs/mocha/issues/1660) - fix assertion of invalid dates ([#1661](https://github.com/mochajs/mocha/issues/1661), [@a8m](https://github.com/a8m))
1001
+ - [#1241](https://github.com/mochajs/mocha/issues/1241) - fix issue with multiline diffs appearing as single line ([#1655](https://github.com/mochajs/mocha/issues/1655), [@a8m](https://github.com/a8m))
1002
+
1003
+ # 2.2.4 / 2015-04-08
1004
+
1005
+ - Load mocha.opts in \_mocha for now (close [#1645](https://github.com/mochajs/mocha/issues/1645))
1006
+
1007
+ # 2.2.3 / 2015-04-07
1008
+
1009
+ - fix(reporter/base): string diff - issue [#1241](https://github.com/mochajs/mocha/issues/1241)
1010
+ - fix(reporter/base): string diff - issue [#1241](https://github.com/mochajs/mocha/issues/1241)
1011
+ - fix(reporter/base): don't show diffs for errors without expectation
1012
+ - fix(reporter/base): don't assume error message is first line of stack
1013
+ - improve: dry up reporter/base test
1014
+ - fix(reporter/base): explicitly ignore showDiff [#1614](https://github.com/mochajs/mocha/issues/1614)
1015
+ - Add iojs to travis build
1016
+ - Pass `--allow-natives-syntax` flag to node.
1017
+ - Support --harmony_classes flag for io.js
1018
+ - Fix 1556: Update utils.clean to handle newlines in func declarations
1019
+ - Fix 1606: fix err handling in IE &lt;= 8 and non-ES5 browsers
1020
+ - Fix 1585: make \_mocha executable again
1021
+ - chore(package.json): add a8m as a contributor
1022
+ - Fixed broken link on html-cov reporter
1023
+ - support --es_staging flag
1024
+ - fix issue where menu overlaps content.
1025
+ - update contributors in package.json
1026
+ - Remove trailing whitespace from reporter output
1027
+ - Remove contributors list from readme
1028
+ - log third-party reporter errors
1029
+ - [Fix] Exclude not own properties when looping on options
1030
+ - fix: support node args in mocha.opts (close [#1573](https://github.com/mochajs/mocha/issues/1573))
1031
+ - fix(reporter/base): string diff - issue [#1241](https://github.com/mochajs/mocha/issues/1241)
1032
+
1033
+ # 2.2.1 / 2015-03-09
1034
+
1035
+ - Fix passing of args intended for node/iojs.
1036
+
1037
+ # 2.2.0 / 2015-03-06
1038
+
1039
+ - Update mocha.js
1040
+ - Add --fgrep. Use grep for RegExp, fgrep for str
1041
+ - Ignore async global errors after spec resolution
1042
+ - Fixing errors that prevent mocha.js from loading in the browser - fixes [#1558](https://github.com/mochajs/mocha/issues/1558)
1043
+ - fix(utils): issue [#1558](https://github.com/mochajs/mocha/issues/1558) + make
1044
+ - add ability to delay root suite; closes [#362](https://github.com/mochajs/mocha/issues/362), closes [#1124](https://github.com/mochajs/mocha/issues/1124)
1045
+ - fix insanity in http tests
1046
+ - update travis: add node 0.12, add gitter, remove slack
1047
+ - building
1048
+ - resolve [#1548](https://github.com/mochajs/mocha/issues/1548): ensure the environment's "node" executable is used
1049
+ - reporters/base: use supports-color to detect colorable term
1050
+ - travis: use docker containers
1051
+ - small fix: commander option for --expose-gc
1052
+ - Ignore asynchronous errors after global failure
1053
+ - Improve error output when a test fails with a non-error
1054
+ - updated travis badge, uses svg instead of img
1055
+ - Allow skip from test context for [#332](https://github.com/mochajs/mocha/issues/332)
1056
+ - [JSHINT] Unnecessary semicolon fixed in bin/\_mocha
1057
+ - Added a reminder about the done() callback to test timeout error messages
1058
+ - fixes [#1496](https://github.com/mochajs/mocha/issues/1496), in Mocha.run(fn), check if fn exists before executing it, added tests too
1059
+ - Add Harmony Proxy flag for iojs
1060
+ - test(utils|ms|\*): test existing units
1061
+ - add support for some iojs flags
1062
+ - fix(utils.stringify): issue [#1229](https://github.com/mochajs/mocha/issues/1229), diff viewer
1063
+ - Remove slack link
1064
+ - Prevent multiple 'grep=' querystring params in html reporter
1065
+ - Use grep as regexp (close [#1381](https://github.com/mochajs/mocha/issues/1381))
1066
+ - utils.stringify should handle objects without an Object prototype
1067
+ - in runnable test, comparing to undefined error's message rather than a literal
1068
+ - Fix test running output truncation on async STDIO
1069
+ - amended for deprecated customFds option in child_process
1070
+
1071
+ # 2.1.0 / 2014-12-23
1072
+
1073
+ - showDiff: don’t stringify strings
1074
+ - Clean up unused module dependencies.
1075
+ - Filter zero-length strings from mocha.opts
1076
+ - only write to stdout in reporters
1077
+ - Revert "only write to stdout in reporters"
1078
+ - Print colored output only to a tty
1079
+ - update summary in README.md
1080
+ - rename Readme.md/History.md to README.md/HISTORY.md because neurotic
1081
+ - add .mailmap to fix "git shortlog" or "git summary" output
1082
+ - fixes [#1461](https://github.com/mochajs/mocha/issues/1461): nyan-reporter now respects Base.useColors, fixed bug where Base.color would not return a string when str wasn't a string.
1083
+ - Use existing test URL builder in failed replay links
1084
+ - modify .travis.yml: use travis_retry; closes [#1449](https://github.com/mochajs/mocha/issues/1449)
1085
+ - fix -t 0 behavior; closes [#1446](https://github.com/mochajs/mocha/issues/1446)
1086
+ - fix tests (whoops)
1087
+ - improve diff behavior
1088
+ - Preserve pathname when linking to individual tests
1089
+ - Fix test
1090
+ - Tiny typo in comments fixed
1091
+ - after hooks now being called on failed tests when using bail, fixes [#1093](https://github.com/mochajs/mocha/issues/1093)
1092
+ - fix throwing undefined/null now makes tests fail, fixes [#1395](https://github.com/mochajs/mocha/issues/1395)
1093
+ - compiler extensions are added as watched extensions, removed non-standard extensions from watch regex, resolves [#1221](https://github.com/mochajs/mocha/issues/1221)
1094
+ - prefix/namespace for suite titles in markdown reporter, fixes [#554](https://github.com/mochajs/mocha/issues/554)
1095
+ - fix more bad markdown in CONTRIBUTING.md
1096
+ - fix bad markdown in CONTRIBUTING.md
1097
+ - add setImmediate/clearImmediate to globals; closes [#1435](https://github.com/mochajs/mocha/issues/1435)
1098
+ - Fix buffer diffs (closes [#1132](https://github.com/mochajs/mocha/issues/1132), closes [#1433](https://github.com/mochajs/mocha/issues/1433))
1099
+ - add a CONTRIBUTING.md. closes [#882](https://github.com/mochajs/mocha/issues/882)
1100
+ - fix intermittent build failures (maybe). closes [#1407](https://github.com/mochajs/mocha/issues/1407)
1101
+ - add Slack notification to .travis.yml
1102
+ - Fix slack link
1103
+ - Add slack room to readme
1104
+ - Update maintainers
1105
+ - update maintainers and contributors
1106
+ - resolves [#1393](https://github.com/mochajs/mocha/issues/1393): kill children with more effort on SIGINT
1107
+ - xunit reporter support for optionally writing to a file
1108
+ - if a reporter has a .done method, call it before exiting
1109
+ - add support for reporter options
1110
+ - only write to stdout in reporters
1111
+
1112
+ # 2.0.0 / 2014-10-21
1113
+
1114
+ - remove: support for node 0.6.x, 0.4.x
1115
+ - fix: landing reporter with non ansi characters ([#211](https://github.com/mochajs/mocha/issues/211))
1116
+ - fix: html reporter - preserve query params when navigating to suites/tests ([#1358](https://github.com/mochajs/mocha/issues/1358))
1117
+ - fix: json stream reporter add error message to failed test
1118
+ - fix: fixes for visionmedia -> mochajs
1119
+ - fix: use stdio, fixes node deprecation warnings ([#1391](https://github.com/mochajs/mocha/issues/1391))
1120
+
1121
+ # 1.21.5 / 2014-10-11
1122
+
1123
+ - fix: build for NodeJS v0.6.x
1124
+ - fix: do not attempt to highlight syntax when non-HTML reporter is used
1125
+ - update: escape-string-regexp to 1.0.2.
1126
+ - fix: botched indentation in canonicalize()
1127
+ - fix: .gitignore: ignore .patch and .diff files
1128
+ - fix: changed 'Catched' to 'Caught' in uncaught exception error handler messages
1129
+ - add: `pending` field for json reporter
1130
+ - fix: Runner.prototype.uncaught: don't double-end runnables that already have a state.
1131
+ - fix: --recursive, broken by [`f0facd2`](https://github.com/mochajs/mocha/commit/f0facd2e)
1132
+ - update: replaces escapeRegexp with the escape-string-regexp package.
1133
+ - update: commander to 2.3.0.
1134
+ - update: diff to 1.0.8.
1135
+ - fix: ability to disable syntax highlighting ([#1329](https://github.com/mochajs/mocha/issues/1329))
1136
+ - fix: added empty object to errorJSON() call to catch when no error is present
1137
+ - fix: never time out after calling enableTimeouts(false)
1138
+ - fix: timeout(0) will work at suite level ([#1300](https://github.com/mochajs/mocha/issues/1300))
1139
+ - Fix for --watch+only() issue ([#888](https://github.com/mochajs/mocha/issues/888) )
1140
+ - fix: respect err.showDiff, add Base reporter test ([#810](https://github.com/mochajs/mocha/issues/810))
1141
+
1142
+ # 1.22.1-3 / 2014-07-27
1143
+
1144
+ - fix: disabling timeouts with this.timeout(0) ([#1301](https://github.com/mochajs/mocha/issues/1301))
1145
+
1146
+ # 1.22.1-3 / 2014-07-27
1147
+
1148
+ - fix: local uis and reporters ([#1288](https://github.com/mochajs/mocha/issues/1288))
1149
+ - fix: building 1.21.0's changes in the browser ([#1284](https://github.com/mochajs/mocha/issues/1284))
1150
+
1151
+ # 1.21.0 / 2014-07-23
1152
+
1153
+ - add: --no-timeouts option ([#1262](https://github.com/mochajs/mocha/issues/1262), [#1268](https://github.com/mochajs/mocha/issues/1268))
1154
+ - add: --\*- deprecation node flags ([#1217](https://github.com/mochajs/mocha/issues/1217))
1155
+ - add: --watch-extensions argument ([#1247](https://github.com/mochajs/mocha/issues/1247))
1156
+ - change: spec reporter is default ([#1228](https://github.com/mochajs/mocha/issues/1228))
1157
+ - fix: diff output showing incorrect +/- ([#1182](https://github.com/mochajs/mocha/issues/1182))
1158
+ - fix: diffs of circular structures ([#1179](https://github.com/mochajs/mocha/issues/1179))
1159
+ - fix: re-render the progress bar when progress has changed only ([#1151](https://github.com/mochajs/mocha/issues/1151))
1160
+ - fix support for environments with global and window ([#1159](https://github.com/mochajs/mocha/issues/1159))
1161
+ - fix: reverting to previously defined onerror handler ([#1178](https://github.com/mochajs/mocha/issues/1178))
1162
+ - fix: stringify non error objects passed to done() ([#1270](https://github.com/mochajs/mocha/issues/1270))
1163
+ - fix: using local ui, reporters ([#1267](https://github.com/mochajs/mocha/issues/1267))
1164
+ - fix: cleaning es6 arrows ([#1176](https://github.com/mochajs/mocha/issues/1176))
1165
+ - fix: don't include attrs in failure tag for xunit ([#1244](https://github.com/mochajs/mocha/issues/1244))
1166
+ - fix: fail tests that return a promise if promise is rejected w/o a reason ([#1224](https://github.com/mochajs/mocha/issues/1224))
1167
+ - fix: showing failed tests in doc reporter ([#1117](https://github.com/mochajs/mocha/issues/1117))
1168
+ - fix: dot reporter dots being off ([#1204](https://github.com/mochajs/mocha/issues/1204))
1169
+ - fix: catch empty throws ([#1219](https://github.com/mochajs/mocha/issues/1219))
1170
+ - fix: honoring timeout for sync operations ([#1242](https://github.com/mochajs/mocha/issues/1242))
1171
+ - update: growl to 1.8.0
1172
+
1173
+ # 1.20.1 / 2014-06-03
1174
+
1175
+ - update: should dev dependency to ~4.0.0 ([#1231](https://github.com/mochajs/mocha/issues/1231))
1176
+
1177
+ # 1.20.0 / 2014-05-28
1178
+
1179
+ - add: filenames to suite objects ([#1222](https://github.com/mochajs/mocha/issues/1222))
1180
+
1181
+ # 1.19.0 / 2014-05-17
1182
+
1183
+ - add: browser script option to package.json
1184
+ - add: export file in Mocha.Test objects ([#1174](https://github.com/mochajs/mocha/issues/1174))
1185
+ - add: add docs for wrapped node flags
1186
+ - fix: mocha.run() to return error status in browser ([#1216](https://github.com/mochajs/mocha/issues/1216))
1187
+ - fix: clean() to show failure details ([#1205](https://github.com/mochajs/mocha/issues/1205))
1188
+ - fix: regex that generates html for new keyword ([#1201](https://github.com/mochajs/mocha/issues/1201))
1189
+ - fix: sibling suites have inherited but separate contexts ([#1164](https://github.com/mochajs/mocha/issues/1164))
1190
+
1191
+ # 1.18.2 / 2014-03-18
1192
+
1193
+ - fix: html runner was prevented from using #mocha as the default root el ([#1162](https://github.com/mochajs/mocha/issues/1162))
1194
+
1195
+ # 1.18.1 / 2014-03-18
1196
+
1197
+ - fix: named before/after hooks in bdd, tdd, qunit interfaces ([#1161](https://github.com/mochajs/mocha/issues/1161))
1198
+
1199
+ # 1.18.0 / 2014-03-13
1200
+
1201
+ - add: promise support ([#329](https://github.com/mochajs/mocha/issues/329))
1202
+ - add: named before/after hooks ([#966](https://github.com/mochajs/mocha/issues/966))
1203
+
1204
+ # 1.17.1 / 2014-01-22
1205
+
1206
+ - fix: expected messages in should.js (should.js#168)
1207
+ - fix: expect errno global in node versions &lt; v0.9.11 ([#1111](https://github.com/mochajs/mocha/issues/1111))
1208
+ - fix: unreliable checkGlobals optimization ([#1110](https://github.com/mochajs/mocha/issues/1110))
1209
+
1210
+ # 1.17.0 / 2014-01-09
1211
+
1212
+ - add: able to require globals (describe, it, etc.) through mocha ([#1077](https://github.com/mochajs/mocha/issues/1077))
1213
+ - fix: abort previous run on --watch change ([#1100](https://github.com/mochajs/mocha/issues/1100))
1214
+ - fix: reset context for each --watch triggered run ([#1099](https://github.com/mochajs/mocha/issues/1099))
1215
+ - fix: error when cli can't resolve path or pattern ([#799](https://github.com/mochajs/mocha/issues/799))
1216
+ - fix: canonicalize objects before stringifying and diffing them ([#1079](https://github.com/mochajs/mocha/issues/1079))
1217
+ - fix: make CR call behave like carriage return for non tty ([#1087](https://github.com/mochajs/mocha/issues/1087))
1218
+
1219
+ # 1.16.2 / 2013-12-23
1220
+
1221
+ - fix: couple issues with ie 8 ([#1082](https://github.com/mochajs/mocha/issues/1082), [#1081](https://github.com/mochajs/mocha/issues/1081))
1222
+ - fix: issue running the xunit reporter in browsers ([#1068](https://github.com/mochajs/mocha/issues/1068))
1223
+ - fix: issue with firefox &lt; 3.5 ([#725](https://github.com/mochajs/mocha/issues/725))
1224
+
1225
+ # 1.16.1 / 2013-12-19
1226
+
1227
+ - fix: recompiled for missed changes from the last release
1228
+
1229
+ # 1.16.0 / 2013-12-19
1230
+
1231
+ - add: Runnable.globals(arr) for per test global whitelist ([#1046](https://github.com/mochajs/mocha/issues/1046))
1232
+ - add: mocha.throwError(err) for assertion libs to call ([#985](https://github.com/mochajs/mocha/issues/985))
1233
+ - remove: --watch's spinner ([#806](https://github.com/mochajs/mocha/issues/806))
1234
+ - fix: duplicate test output for multi-line specs in spec reporter ([#1006](https://github.com/mochajs/mocha/issues/1006))
1235
+ - fix: gracefully exit on SIGINT ([#1063](https://github.com/mochajs/mocha/issues/1063))
1236
+ - fix expose the specified ui only in the browser ([#984](https://github.com/mochajs/mocha/issues/984))
1237
+ - fix: ensure process exit code is preserved when using --no-exit ([#1059](https://github.com/mochajs/mocha/issues/1059))
1238
+ - fix: return true from window.onerror handler ([#868](https://github.com/mochajs/mocha/issues/868))
1239
+ - fix: xunit reporter to use process.stdout.write ([#1068](https://github.com/mochajs/mocha/issues/1068))
1240
+ - fix: utils.clean(str) indentation ([#761](https://github.com/mochajs/mocha/issues/761))
1241
+ - fix: xunit reporter returning test duration a NaN ([#1039](https://github.com/mochajs/mocha/issues/1039))
1242
+
1243
+ # 1.15.1 / 2013-12-03
1244
+
1245
+ - fix: recompiled for missed changes from the last release
1246
+
1247
+ # 1.15.0 / 2013-12-02
1248
+
1249
+ - add: `--no-exit` to prevent `process.exit()` ([#1018](https://github.com/mochajs/mocha/issues/1018))
1250
+ - fix: using inline diffs ([#1044](https://github.com/mochajs/mocha/issues/1044))
1251
+ - fix: show pending test details in xunit reporter ([#1051](https://github.com/mochajs/mocha/issues/1051))
1252
+ - fix: faster global leak detection ([#1024](https://github.com/mochajs/mocha/issues/1024))
1253
+ - fix: yui compression ([#1035](https://github.com/mochajs/mocha/issues/1035))
1254
+ - fix: wrapping long lines in test results ([#1030](https://github.com/mochajs/mocha/issues/1030), [#1031](https://github.com/mochajs/mocha/issues/1031))
1255
+ - fix: handle errors in hooks ([#1043](https://github.com/mochajs/mocha/issues/1043))
1256
+
1257
+ # 1.14.0 / 2013-11-02
1258
+
1259
+ - add: unified diff ([#862](https://github.com/mochajs/mocha/issues/862))
1260
+ - add: set MOCHA_COLORS env var to use colors ([#965](https://github.com/mochajs/mocha/issues/965))
1261
+ - add: able to override tests links in html reporters ([#776](https://github.com/mochajs/mocha/issues/776))
1262
+ - remove: teamcity reporter ([#954](https://github.com/mochajs/mocha/issues/954))
1263
+ - update: commander dependency to 2.0.0 ([#1010](https://github.com/mochajs/mocha/issues/1010))
1264
+ - fix: mocha --ui will try to require the ui if not built in, as --reporter does ([#1022](https://github.com/mochajs/mocha/issues/1022))
1265
+ - fix: send cursor commands only if isatty ([#184](https://github.com/mochajs/mocha/issues/184), [#1003](https://github.com/mochajs/mocha/issues/1003))
1266
+ - fix: include assertion message in base reporter ([#993](https://github.com/mochajs/mocha/issues/993), [#991](https://github.com/mochajs/mocha/issues/991))
1267
+ - fix: consistent return of it, it.only, and describe, describe.only ([#840](https://github.com/mochajs/mocha/issues/840))
1268
+
1269
+ # 1.13.0 / 2013-09-15
1270
+
1271
+ - add: sort test files with --sort ([#813](https://github.com/mochajs/mocha/issues/813))
1272
+ - update: diff dependency to 1.0.7
1273
+ - update: glob dependency to 3.2.3 ([#927](https://github.com/mochajs/mocha/issues/927))
1274
+ - fix: diffs show whitespace differences ([#976](https://github.com/mochajs/mocha/issues/976))
1275
+ - fix: improve global leaks ([#783](https://github.com/mochajs/mocha/issues/783))
1276
+ - fix: firefox window.getInterface leak
1277
+ - fix: accessing iframe via window[iframeIndex] leak
1278
+ - fix: faster global leak checking
1279
+ - fix: reporter pending css selector ([#970](https://github.com/mochajs/mocha/issues/970))
1280
+
1281
+ # 1.12.1 / 2013-08-29
1282
+
1283
+ - remove test.js from .gitignore
1284
+ - update included version of ms.js
1285
+
1286
+ # 1.12.0 / 2013-07-01
1287
+
1288
+ - add: prevent diffs for differing types. Closes [#900](https://github.com/mochajs/mocha/issues/900)
1289
+ - add `Mocha.process` hack for phantomjs
1290
+ - fix: use compilers with requires
1291
+ - fix regexps in diffs. Closes [#890](https://github.com/mochajs/mocha/issues/890)
1292
+ - fix xunit NaN on failure. Closes [#894](https://github.com/mochajs/mocha/issues/894)
1293
+ - fix: strip tab indentation in `clean` utility method
1294
+ - fix: textmate bundle installation
1295
+
1296
+ # 1.11.0 / 2013-06-12
1297
+
1298
+ - add --prof support
1299
+ - add --harmony support
1300
+ - add --harmony-generators support
1301
+ - add "Uncaught " prefix to uncaught exceptions
1302
+ - add web workers support
1303
+ - add `suite.skip()`
1304
+ - change to output # of pending / passing even on failures. Closes [#872](https://github.com/mochajs/mocha/issues/872)
1305
+ - fix: prevent hooks from being called if we are bailing
1306
+ - fix `this.timeout(0)`
1307
+
1308
+ # 1.10.0 / 2013-05-21
1309
+
1310
+ - add add better globbing support for windows via `glob` module
1311
+ - add support to pass through flags such as --debug-brk=1234. Closes [#852](https://github.com/mochajs/mocha/issues/852)
1312
+ - add test.only, test.skip to qunit interface
1313
+ - change to always use word-based diffs for now. Closes [#733](https://github.com/mochajs/mocha/issues/733)
1314
+ - change `mocha init` tests.html to index.html
1315
+ - fix `process` global leak in the browser
1316
+ - fix: use resolve() instead of join() for --require
1317
+ - fix: filterLeaks() condition to not consider indices in global object as leaks
1318
+ - fix: restrict mocha.css styling to #mocha id
1319
+ - fix: save timer references to avoid Sinon interfering in the browser build.
1320
+
1321
+ # 1.9.0 / 2013-04-03
1322
+
1323
+ - add improved setImmediate implementation
1324
+ - replace --ignore-leaks with --check-leaks
1325
+ - change default of ignoreLeaks to true. Closes [#791](https://github.com/mochajs/mocha/issues/791)
1326
+ - remove scrolling for HTML reporter
1327
+ - fix retina support
1328
+ - fix tmbundle, restrict to js scope
1329
+
1330
+ # 1.8.2 / 2013-03-11
1331
+
1332
+ - add `setImmediate` support for 0.10.x
1333
+ - fix mocha -w spinner on windows
1334
+
1335
+ # 1.8.1 / 2013-01-09
1336
+
1337
+ - fix .bail() arity check causing it to default to true
1338
+
1339
+ # 1.8.0 / 2013-01-08
1340
+
1341
+ - add Mocha() options bail support
1342
+ - add `Mocha#bail()` method
1343
+ - add instanceof check back for inheriting from Error
1344
+ - add component.json
1345
+ - add diff.js to browser build
1346
+ - update growl
1347
+ - fix TAP reporter failures comment :D
1348
+
1349
+ # 1.7.4 / 2012-12-06
1350
+
1351
+ - add total number of passes and failures to TAP
1352
+ - remove .bind() calls. re [#680](https://github.com/mochajs/mocha/issues/680)
1353
+ - fix indexOf. Closes [#680](https://github.com/mochajs/mocha/issues/680)
1354
+
1355
+ # 1.7.3 / 2012-11-30
1356
+
1357
+ - fix uncaught error support for the browser
1358
+ - revert uncaught "fix" which breaks node
1359
+
1360
+ # 1.7.2 / 2012-11-28
1361
+
1362
+ - fix uncaught errors to expose the original error message
1363
+
1364
+ # 1.7.0 / 2012-11-07
1365
+
1366
+ - add `--async-only` support to prevent false positives for missing `done()`
1367
+ - add sorting by filename in code coverage
1368
+ - add HTML 5 doctype to browser template.
1369
+ - add play button to html reporter to rerun a single test
1370
+ - add `this.timeout(ms)` as Suite#timeout(ms). Closes [#599](https://github.com/mochajs/mocha/issues/599)
1371
+ - update growl dependency to 1.6.x
1372
+ - fix encoding of test-case ?grep. Closes [#637](https://github.com/mochajs/mocha/issues/637)
1373
+ - fix unicode chars on windows
1374
+ - fix dom globals in Opera/IE. Closes [#243](https://github.com/mochajs/mocha/issues/243)
1375
+ - fix markdown reporter a tags
1376
+ - fix `this.timeout("5s")` support
1377
+
1378
+ # 1.6.0 / 2012-10-02
1379
+
1380
+ - add object diffs when `err.showDiff` is present
1381
+ - add hiding of empty suites when pass/failures are toggled
1382
+ - add faster `.length` checks to `checkGlobals()` before performing the filter
1383
+
1384
+ # 1.5.0 / 2012-09-21
1385
+
1386
+ - add `ms()` to `.slow()` and `.timeout()`
1387
+ - add `Mocha#checkLeaks()` to re-enable global leak checks
1388
+ - add `this.slow()` option [aheckmann]
1389
+ - add tab, CR, LF to error diffs for now
1390
+ - add faster `.checkGlobals()` solution [guille]
1391
+ - remove `fn.call()` from reduce util
1392
+ - remove `fn.call()` from filter util
1393
+ - fix forEach. Closes [#582](https://github.com/mochajs/mocha/issues/582)
1394
+ - fix relaying of signals [TooTallNate]
1395
+ - fix TAP reporter grep number
1396
+
1397
+ # 1.4.2 / 2012-09-01
1398
+
1399
+ - add support to multiple `Mocha#globals()` calls, and strings
1400
+ - add `mocha.reporter()` constructor support [jfirebaugh]
1401
+ - add `mocha.timeout()`
1402
+ - move query-string parser to utils.js
1403
+ - move highlight code to utils.js
1404
+ - fix third-party reporter support [exogen]
1405
+ - fix client-side API to match node-side [jfirebaugh]
1406
+ - fix mocha in iframe [joliss]
1407
+
1408
+ # 1.4.1 / 2012-08-28
1409
+
1410
+ - add missing `Markdown` export
1411
+ - fix `Mocha#grep()`, escape regexp strings
1412
+ - fix reference error when `devicePixelRatio` is not defined. Closes [#549](https://github.com/mochajs/mocha/issues/549)
1413
+
1414
+ # 1.4.0 / 2012-08-22
1415
+
1416
+ - add mkdir -p to `mocha init`. Closes [#539](https://github.com/mochajs/mocha/issues/539)
1417
+ - add `.only()`. Closes [#524](https://github.com/mochajs/mocha/issues/524)
1418
+ - add `.skip()`. Closes [#524](https://github.com/mochajs/mocha/issues/524)
1419
+ - change str.trim() to use utils.trim(). Closes [#533](https://github.com/mochajs/mocha/issues/533)
1420
+ - fix HTML progress indicator retina display
1421
+ - fix url-encoding of click-to-grep HTML functionality
1422
+
1423
+ # 1.3.2 / 2012-08-01
1424
+
1425
+ - fix exports double-execution regression. Closes [#531](https://github.com/mochajs/mocha/issues/531)
1426
+
1427
+ # 1.3.1 / 2012-08-01
1428
+
1429
+ - add passes/failures toggling to HTML reporter
1430
+ - add pending state to `xit()` and `xdescribe()` [Brian Moore]
1431
+ - add the [**@charset**](https://github.com/charset) "UTF-8"; to fix [#522](https://github.com/mochajs/mocha/issues/522) with FireFox. [Jonathan Creamer]
1432
+ - add border-bottom to #stats links
1433
+ - add check for runnable in `Runner#uncaught()`. Closes [#494](https://github.com/mochajs/mocha/issues/494)
1434
+ - add 0.4 and 0.6 back to travis.yml
1435
+ - add `-E, --growl-errors` to growl on failures only
1436
+ - add prefixes to debug() names. Closes [#497](https://github.com/mochajs/mocha/issues/497)
1437
+ - add `Mocha#invert()` to js api
1438
+ - change dot reporter to use sexy unicode dots
1439
+ - fix error when clicking pending test in HTML reporter
1440
+ - fix `make tm`
1441
+
1442
+ # 1.3.0 / 2012-07-05
1443
+
1444
+ - add window scrolling to `HTML` reporter
1445
+ - add v8 `--trace-*` option support
1446
+ - add support for custom reports via `--reporter MODULE`
1447
+ - add `--invert` switch to invert `--grep` matches
1448
+ - fix export of `Nyan` reporter. Closes [#495](https://github.com/mochajs/mocha/issues/495)
1449
+ - fix escaping of `HTML` suite titles. Closes [#486](https://github.com/mochajs/mocha/issues/486)
1450
+ - fix `done()` called multiple times with an error test
1451
+ - change `--grep` - regexp escape the input
1452
+
1453
+ # 1.2.2 / 2012-06-28
1454
+
1455
+ - Added 0.8.0 support
1456
+
1457
+ # 1.2.1 / 2012-06-25
1458
+
1459
+ - Added `this.test.error(err)` support to after each hooks. Closes [#287](https://github.com/mochajs/mocha/issues/287)
1460
+ - Added: export top-level suite on global mocha object (mocha.suite). Closes [#448](https://github.com/mochajs/mocha/issues/448)
1461
+ - Fixed `js` code block format error in markdown reporter
1462
+ - Fixed deprecation warning when using `path.existsSync`
1463
+ - Fixed --globals with wildcard
1464
+ - Fixed chars in nyan when his head moves back
1465
+ - Remove `--growl` from test/mocha.opts. Closes [#289](https://github.com/mochajs/mocha/issues/289)
1466
+
1467
+ # 1.2.0 / 2012-06-17
1468
+
1469
+ - Added `nyan` reporter [Atsuya Takagi]
1470
+ - Added `mocha init <path>` to copy client files
1471
+ - Added "specify" synonym for "it" [domenic]
1472
+ - Added global leak wildcard support [nathanbowser]
1473
+ - Fixed runner emitter leak. closes [#432](https://github.com/mochajs/mocha/issues/432)
1474
+ - Fixed omission of .js extension. Closes [#454](https://github.com/mochajs/mocha/issues/454)
1475
+
1476
+ # 1.1.0 / 2012-05-30
1477
+
1478
+ - Added: check each `mocha(1)` arg for directories to walk
1479
+ - Added `--recursive` [tricknotes]
1480
+ - Added `context` for BDD [hokaccha]
1481
+ - Added styling for new clickable titles
1482
+ - Added clickable suite titles to HTML reporter
1483
+ - Added warning when strings are thrown as errors
1484
+ - Changed: green arrows again in HTML reporter styling
1485
+ - Changed ul/li elements instead of divs for better copy-and-pasting [joliss]
1486
+ - Fixed issue [#325](https://github.com/mochajs/mocha/issues/325) - add better grep support to js api
1487
+ - Fixed: save timer references to avoid Sinon interfering.
1488
+
1489
+ # 1.0.3 / 2012-04-30
1490
+
1491
+ - Fixed string diff newlines
1492
+ - Fixed: removed mocha.css target. Closes [#401](https://github.com/mochajs/mocha/issues/401)
1493
+
1494
+ # 1.0.2 / 2012-04-25
1495
+
1496
+ - Added HTML reporter duration. Closes [#47](https://github.com/mochajs/mocha/issues/47)
1497
+ - Fixed: one postMessage event listener [exogen]
1498
+ - Fixed: allow --globals to be used multiple times. Closes [#100](https://github.com/mochajs/mocha/issues/100) [brendannee]
1499
+ - Fixed [#158](https://github.com/mochajs/mocha/issues/158): removes jquery include from browser tests
1500
+ - Fixed grep. Closes [#372](https://github.com/mochajs/mocha/issues/372) [brendannee]
1501
+ - Fixed [#166](https://github.com/mochajs/mocha/issues/166) - When grepping don't display the empty suites
1502
+ - Removed test/browser/style.css. Closes [#385](https://github.com/mochajs/mocha/issues/385)
1503
+
1504
+ # 1.0.1 / 2012-04-04
1505
+
1506
+ - Fixed `.timeout()` in hooks
1507
+ - Fixed: allow callback for `mocha.run()` in client version
1508
+ - Fixed browser hook error display. Closes [#361](https://github.com/mochajs/mocha/issues/361)
1509
+
1510
+ # 1.0.0 / 2012-03-24
1511
+
1512
+ - Added js API. Closes [#265](https://github.com/mochajs/mocha/issues/265)
1513
+ - Added: initial run of tests with `--watch`. Closes [#345](https://github.com/mochajs/mocha/issues/345)
1514
+ - Added: mark `location` as a global on the CS. Closes [#311](https://github.com/mochajs/mocha/issues/311)
1515
+ - Added `markdown` reporter (github flavour)
1516
+ - Added: scrolling menu to coverage.html. Closes [#335](https://github.com/mochajs/mocha/issues/335)
1517
+ - Added source line to html report for Safari [Tyson Tate]
1518
+ - Added "min" reporter, useful for `--watch` [Jakub Nešetřil]
1519
+ - Added support for arbitrary compilers via . Closes [#338](https://github.com/mochajs/mocha/issues/338) [Ian Young]
1520
+ - Added Teamcity export to lib/reporters/index [Michael Riley]
1521
+ - Fixed chopping of first char in error reporting. Closes [#334](https://github.com/mochajs/mocha/issues/334) [reported by topfunky]
1522
+ - Fixed terrible FF / Opera stack traces
1523
+
1524
+ # 0.14.1 / 2012-03-06
1525
+
1526
+ - Added lib-cov to _.npmignore_
1527
+ - Added reporter to `mocha.run([reporter])` as argument
1528
+ - Added some margin-top to the HTML reporter
1529
+ - Removed jQuery dependency
1530
+ - Fixed `--watch`: purge require cache. Closes [#266](https://github.com/mochajs/mocha/issues/266)
1531
+
1532
+ # 0.14.0 / 2012-03-01
1533
+
1534
+ - Added string diff support for terminal reporters
1535
+
1536
+ # 0.13.0 / 2012-02-23
1537
+
1538
+ - Added preliminary test coverage support. Closes [#5](https://github.com/mochajs/mocha/issues/5)
1539
+ - Added `HTMLCov` reporter
1540
+ - Added `JSONCov` reporter [kunklejr]
1541
+ - Added `xdescribe()` and `xit()` to the BDD interface. Closes [#263](https://github.com/mochajs/mocha/issues/263) (docs \* Changed: make json reporter output pretty json
1542
+ - Fixed node-inspector support, swapped `--debug` for `debug` to match node. Closes [#247](https://github.com/mochajs/mocha/issues/247)
1543
+
1544
+ # 0.12.1 / 2012-02-14
1545
+
1546
+ - Added `npm docs mocha` support [TooTallNate]
1547
+ - Added a `Context` object used for hook and test-case this. Closes [#253](https://github.com/mochajs/mocha/issues/253)
1548
+ - Fixed `Suite#clone()` `.ctx` reference. Closes [#262](https://github.com/mochajs/mocha/issues/262)
1549
+
1550
+ # 0.12.0 / 2012-02-02
1551
+
1552
+ - Added .coffee `--watch` support. Closes [#242](https://github.com/mochajs/mocha/issues/242)
1553
+ - Added support to `--require` files relative to the CWD. Closes [#241](https://github.com/mochajs/mocha/issues/241)
1554
+ - Added quick n dirty syntax highlighting. Closes [#248](https://github.com/mochajs/mocha/issues/248)
1555
+ - Changed: made HTML progress indicator smaller
1556
+ - Fixed xunit errors attribute [dhendo]
1557
+
1558
+ # 0.10.2 / 2012-01-21
1559
+
1560
+ - Fixed suite count in reporter stats. Closes [#222](https://github.com/mochajs/mocha/issues/222)
1561
+ - Fixed `done()` after timeout error reporting [Phil Sung]
1562
+ - Changed the 0-based errors to 1
1563
+
1564
+ # 0.10.1 / 2012-01-17
1565
+
1566
+ - Added support for node 0.7.x
1567
+ - Fixed absolute path support. Closes [#215](https://github.com/mochajs/mocha/issues/215) [kompiro]
1568
+ - Fixed `--no-colors` option [Jussi Virtanen]
1569
+ - Fixed Arial CSS typo in the correct file
1570
+
1571
+ # 0.10.0 / 2012-01-13
1572
+
1573
+ - Added `-b, --bail` to exit on first exception [guillermo]
1574
+ - Added support for `-gc` / `--expose-gc` [TooTallNate]
1575
+ - Added `qunit`-inspired interface
1576
+ - Added MIT LICENSE. Closes [#194](https://github.com/mochajs/mocha/issues/194)
1577
+ - Added: `--watch` all .js in the CWD. Closes [#139](https://github.com/mochajs/mocha/issues/139)
1578
+ - Fixed `self.test` reference in runner. Closes [#189](https://github.com/mochajs/mocha/issues/189)
1579
+ - Fixed double reporting of uncaught exceptions after timeout. Closes [#195](https://github.com/mochajs/mocha/issues/195)
1580
+
1581
+ # 0.8.2 / 2012-01-05
1582
+
1583
+ - Added test-case context support. Closes [#113](https://github.com/mochajs/mocha/issues/113)
1584
+ - Fixed exit status. Closes [#187](https://github.com/mochajs/mocha/issues/187)
1585
+ - Update commander. Closes [#190](https://github.com/mochajs/mocha/issues/190)
1586
+
1587
+ # 0.8.1 / 2011-12-30
1588
+
1589
+ - Fixed reporting of uncaught exceptions. Closes [#183](https://github.com/mochajs/mocha/issues/183)
1590
+ - Fixed error message defaulting [indutny]
1591
+ - Changed mocha(1) from bash to node for windows [Nathan Rajlich]
1592
+
1593
+ # 0.8.0 / 2011-12-28
1594
+
1595
+ - Added `XUnit` reporter [FeeFighters/visionmedia]
1596
+ - Added `say(1)` notification support [Maciej Małecki]
1597
+ - Changed: fail when done() is invoked with a non-Error. Closes [#171](https://github.com/mochajs/mocha/issues/171)
1598
+ - Fixed `err.stack`, defaulting to message. Closes [#180](https://github.com/mochajs/mocha/issues/180)
1599
+ - Fixed: `make tm` mkdir -p the dest. Closes [#137](https://github.com/mochajs/mocha/issues/137)
1600
+ - Fixed mocha(1) --help bin name
1601
+ - Fixed `-d` for `--debug` support
1602
+
1603
+ # 0.7.1 / 2011-12-22
1604
+
1605
+ - Removed `mocha-debug(1)`, use `mocha --debug`
1606
+ - Fixed CWD relative requires
1607
+ - Fixed growl issue on windows [Raynos]
1608
+ - Fixed: platform specific line endings [TooTallNate]
1609
+ - Fixed: escape strings in HTML reporter. Closes [#164](https://github.com/mochajs/mocha/issues/164)
1610
+
1611
+ # 0.7.0 / 2011-12-18
1612
+
1613
+ - Added support for IE{7,8} [guille]
1614
+ - Changed: better browser nextTick implementation [guille]
1615
+
1616
+ # 0.6.0 / 2011-12-18
1617
+
1618
+ - Added setZeroTimeout timeout for browser (nicer stack traces). Closes [#153](https://github.com/mochajs/mocha/issues/153)
1619
+ - Added "view source" on hover for HTML reporter to make it obvious
1620
+ - Changed: replace custom growl with growl lib
1621
+ - Fixed duplicate reporting for HTML reporter. Closes [#154](https://github.com/mochajs/mocha/issues/154)
1622
+ - Fixed silent hook errors in the HTML reporter. Closes [#150](https://github.com/mochajs/mocha/issues/150)
1623
+
1624
+ # 0.5.0 / 2011-12-14
1625
+
1626
+ - Added: push node_modules directory onto module.paths for relative require Closes [#93](https://github.com/mochajs/mocha/issues/93)
1627
+ - Added teamcity reporter [blindsey]
1628
+ - Fixed: recover from uncaught exceptions for tests. Closes [#94](https://github.com/mochajs/mocha/issues/94)
1629
+ - Fixed: only emit "test end" for uncaught within test, not hook
1630
+
1631
+ # 0.4.0 / 2011-12-14
1632
+
1633
+ - Added support for test-specific timeouts via `this.timeout(0)`. Closes [#134](https://github.com/mochajs/mocha/issues/134)
1634
+ - Added guillermo's client-side EventEmitter. Closes [#132](https://github.com/mochajs/mocha/issues/132)
1635
+ - Added progress indicator to the HTML reporter
1636
+ - Fixed slow browser tests. Closes [#135](https://github.com/mochajs/mocha/issues/135)
1637
+ - Fixed "suite" color for light terminals
1638
+ - Fixed `require()` leak spotted by [guillermo]
1639
+
1640
+ # 0.3.6 / 2011-12-09
1641
+
1642
+ - Removed suite merging (for now)
1643
+
1644
+ # 0.3.5 / 2011-12-08
1645
+
1646
+ - Added support for `window.onerror` [guillermo]
1647
+ - Fixed: clear timeout on uncaught exceptions. Closes [#131](https://github.com/mochajs/mocha/issues/131) [guillermo]
1648
+ - Added `mocha.css` to PHONY list.
1649
+ - Added `mocha.js` to PHONY list.
1650
+
1651
+ # 0.3.4 / 2011-12-08
1652
+
1653
+ - Added: allow `done()` to be called with non-Error
1654
+ - Added: return Runner from `mocha.run()`. Closes [#126](https://github.com/mochajs/mocha/issues/126)
1655
+ - Fixed: run afterEach even on failures. Closes [#125](https://github.com/mochajs/mocha/issues/125)
1656
+ - Fixed clobbering of current runnable. Closes [#121](https://github.com/mochajs/mocha/issues/121)
1657
+
1658
+ # 0.3.3 / 2011-12-08
1659
+
1660
+ - Fixed hook timeouts. Closes [#120](https://github.com/mochajs/mocha/issues/120)
1661
+ - Fixed uncaught exceptions in hooks
1662
+
1663
+ # 0.3.2 / 2011-12-05
1664
+
1665
+ - Fixed weird reporting when `err.message` is not present
1666
+
1667
+ # 0.3.1 / 2011-12-04
1668
+
1669
+ - Fixed hook event emitter leak. Closes [#117](https://github.com/mochajs/mocha/issues/117)
1670
+ - Fixed: export `Spec` constructor. Closes [#116](https://github.com/mochajs/mocha/issues/116)
1671
+
1672
+ # 0.3.0 / 2011-12-04
1673
+
1674
+ - Added `-w, --watch`. Closes [#72](https://github.com/mochajs/mocha/issues/72)
1675
+ - Added `--ignore-leaks` to ignore global leak checking
1676
+ - Added browser `?grep=pattern` support
1677
+ - Added `--globals <names>` to specify accepted globals. Closes [#99](https://github.com/mochajs/mocha/issues/99)
1678
+ - Fixed `mocha-debug(1)` on some systems. Closes [#232](https://github.com/mochajs/mocha/issues/232)
1679
+ - Fixed growl total, use `runner.total`
1680
+
1681
+ # 0.2.0 / 2011-11-30
1682
+
1683
+ - Added `--globals <names>` to specify accepted globals. Closes [#99](https://github.com/mochajs/mocha/issues/99)
1684
+ - Fixed funky highlighting of messages. Closes [#97](https://github.com/mochajs/mocha/issues/97)
1685
+ - Fixed `mocha-debug(1)`. Closes [#232](https://github.com/mochajs/mocha/issues/232)
1686
+ - Fixed growl total, use runner.total
1687
+
1688
+ # 0.1.0 / 2011-11-29
1689
+
1690
+ - Added `suiteSetup` and `suiteTeardown` to TDD interface [David Henderson]
1691
+ - Added growl icons. Closes [#84](https://github.com/mochajs/mocha/issues/84)
1692
+ - Fixed coffee-script support
1693
+
1694
+ # 0.0.8 / 2011-11-25
1695
+
1696
+ - Fixed: use `Runner#total` for accurate reporting
1697
+
1698
+ # 0.0.7 / 2011-11-25
1699
+
1700
+ - Added `Hook`
1701
+ - Added `Runnable`
1702
+ - Changed: `Test` is `Runnable`
1703
+ - Fixed global leak reporting in hooks
1704
+ - Fixed: > 2 calls to done() only report the error once
1705
+ - Fixed: clear timer on failure. Closes [#80](https://github.com/mochajs/mocha/issues/80)
1706
+
1707
+ # 0.0.6 / 2011-11-25
1708
+
1709
+ - Fixed return on immediate async error. Closes [#80](https://github.com/mochajs/mocha/issues/80)
1710
+
1711
+ # 0.0.5 / 2011-11-24
1712
+
1713
+ - Fixed: make mocha.opts whitespace less picky [kkaefer]
1714
+
1715
+ # 0.0.4 / 2011-11-24
1716
+
1717
+ - Added `--interfaces`
1718
+ - Added `--reporters`
1719
+ - Added `-c, --colors`. Closes [#69](https://github.com/mochajs/mocha/issues/69)
1720
+ - Fixed hook timeouts
1721
+
1722
+ # 0.0.3 / 2011-11-23
1723
+
1724
+ - Added `-C, --no-colors` to explicitly disable
1725
+ - Added coffee-script support
1726
+
1727
+ # 0.0.2 / 2011-11-22
1728
+
1729
+ - Fixed global leak detection due to Safari bind() change
1730
+ - Fixed: escape html entities in Doc reporter
1731
+ - Fixed: escape html entities in HTML reporter
1732
+ - Fixed pending test support for HTML reporter. Closes [#66](https://github.com/mochajs/mocha/issues/66)
1733
+
1734
+ # 0.0.1 / 2011-11-22
1735
+
1736
+ - Added `--timeout` second shorthand support, ex `--timeout 3s`.
1737
+ - Fixed "test end" event for uncaughtExceptions. Closes [#61](https://github.com/mochajs/mocha/issues/61)
1738
+
1739
+ # 0.0.1-alpha6 / 2011-11-19
1740
+
1741
+ - Added travis CI support (needs enabling when public)
1742
+ - Added preliminary browser support
1743
+ - Added `make mocha.css` target. Closes [#45](https://github.com/mochajs/mocha/issues/45)
1744
+ - Added stack trace to TAP errors. Closes [#52](https://github.com/mochajs/mocha/issues/52)
1745
+ - Renamed tearDown to teardown. Closes [#49](https://github.com/mochajs/mocha/issues/49)
1746
+ - Fixed: cascading hooksc. Closes [#30](https://github.com/mochajs/mocha/issues/30)
1747
+ - Fixed some colors for non-tty
1748
+ - Fixed errors thrown in sync test-cases due to nextTick
1749
+ - Fixed Base.window.width... again give precedence to 0.6.x
1750
+
1751
+ # 0.0.1-alpha5 / 2011-11-17
1752
+
1753
+ - Added `doc` reporter. Closes [#33](https://github.com/mochajs/mocha/issues/33)
1754
+ - Added suite merging. Closes [#28](https://github.com/mochajs/mocha/issues/28)
1755
+ - Added TextMate bundle and `make tm`. Closes [#20](https://github.com/mochajs/mocha/issues/20)
1756
+
1757
+ # 0.0.1-alpha4 / 2011-11-15
1758
+
1759
+ - Fixed getWindowSize() for 0.4.x
1760
+
1761
+ # 0.0.1-alpha3 / 2011-11-15
1762
+
1763
+ - Added `-s, --slow <ms>` to specify "slow" test threshold
1764
+ - Added `mocha-debug(1)`
1765
+ - Added `mocha.opts` support. Closes [#31](https://github.com/mochajs/mocha/issues/31)
1766
+ - Added: default [files] to _test/\*.js_
1767
+ - Added protection against multiple calls to `done()`. Closes [#35](https://github.com/mochajs/mocha/issues/35)
1768
+ - Changed: bright yellow for slow Dot reporter tests
1769
+
1770
+ # 0.0.1-alpha2 / 2011-11-08
1771
+
1772
+ - Missed this one :)
1773
+
1774
+ # 0.0.1-alpha1 / 2011-11-08
1775
+
1776
+ - Initial release