Npms_big

mocha

All 130 versions

Version Release date
3.5.3 September 11, 2017

3.5.3 / 2017-09-11

:bug: Fixes

  • #3003: Fix invalid entities in xUnit reporter first appearing in v3.5.1 (@jkrems)
3.5.2 September 10, 2017

3.5.2 / 2017-09-10

:bug: Fixes

3.5.1 September 10, 2017

3.5.1 / 2017-09-09

:newspaper: News

  • :mega: Mocha is now sponsoring PDXNode! If you're in the Portland area, come check out the monthly talks and hack nights!

:bug: Fixes

  • #2997: Fix missing xit export for "require" interface (@solodynamo)
  • #2957: Fix unicode character handling in XUnit reporter failures (@jkrems)

:nut_and_bolt: Other

3.5.0 July 31, 2017

v3.5.0 / 2017-07-31

:newspaper: News

  • Mocha now has a code of conduct (thanks @kungapal!).
  • Old issues and PRs are now being marked "stale" by Probot's "Stale" plugin. 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.
  • WARNING: Support for non-ES5-compliant environments will be dropped starting with version 4.0.0 of Mocha!

:lock: Security Fixes

:tada: Enhancements

  • #2696: Add --forbid-only and --forbid-pending flags. Use these in CI or hooks to ensure tests aren't accidentally being skipped! (@charlierudolph)
  • #2813: Support Node.js 8's --napi-modules flag (@jupp0r)

:nut_and_bolt: Other

3.4.2 May 24, 2017

3.4.2 / 2017-05-24

:bug: Fixes

:nut_and_bolt: Other

3.4.1 May 14, 2017

Fixed a publishing mishap with git's autocrlf settings.

3.4.0 May 14, 2017

Mocha is now moving to a quicker release schedule: when non-breaking changes are merged, a release should happen that week.

This week's highlights:

  • allowUncaught added to commandline as --allow-uncaught (and bugfixed)
  • warning-related Node flags

:tada: Enhancements

:bug: Fixes

:nut_and_bolt: Other

3.3.0 April 24, 2017

Thanks to all our contributors, maintainers, sponsors, and users! ❤️

As highlights:

  • We've got coverage now!
  • Testing is looking less flaky \o/.
  • No more nitpicking about "mocha.js" build on PRs.

:tada: Enhancements

  • #2659: Adds support for loading reporter from an absolute or relative path (@sul4bh)
  • #2769: Support --inspect-brk on command-line (@igwejk)

:bug: Fixes

  • #2662: Replace unicode chars w/ hex codes in HTML reporter (@rotemdan)

:mag: Coverage

:nut_and_bolt: Other

3.2.0 November 24, 2016

3.2.0 / 2016-11-24

:newspaper: News

Mocha is now a JS Foundation Project!

Mocha is proud to have joined the JS Foundation. For more information, read the announcement.

Contributor License Agreement

Under the foundation, all contributors to Mocha must sign the 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.

Mocha remains licensed under the MIT license.

:bug: Bug Fix

  • #2535: Fix crash when --watch encounters broken symlinks (@villesau)
  • #2593: Fix (old) regression; incorrect symbol shown in list reporter (@Aldaviva)
  • #2584: Fix potential error when running XUnit reporter (@vobujs)

:tada: Enhancement

:nut_and_bolt: Other

Thanks to all our contributors, sponsors and backers! Keep on the lookout for a public roadmap and new contribution guide coming soon.

3.1.2 October 11, 2016

3.1.2 / 2016-10-10

:bug: Bug Fix

  • #2528: Recovery gracefully if an Error's stack property isn't writable ([@boneskull])
3.1.1 October 10, 2016

3.1.1 / 2016-10-09

:bug: Bug Fix

:nut_and_bolt: Other

  • #2490: Lint with semistandard config (@makepanic)
  • #2525: Lint all .js files ([@boneskull])
  • #2524: Provide workaround for developers unable to run browser tests on macOS Sierra ([@boneskull])
3.1.0 September 27, 2016

3.1.0 / 2016-09-27

:tada: Enhancement

  • #2357: Support --inspect on command-line (@simov)
  • #2194: Human-friendly error if no files are matched on command-line (@Munter)
  • #1744: Human-friendly error if a Suite has no callback (BDD/TDD only) (@anton)

:bug: Bug Fix

  • #2488: Fix case in which variables beginning with lowercase "D" may not have been reported properly as global leaks (@JustATrick) :laughing:
  • #2465: Always halt execution in async function when this.skip() is called (@boneskull)
  • #2445: Exits with expected code 130 when SIGINT encountered; exit code can no longer rollover at 256 (@Munter)
  • #2315: Fix uncaught TypeError thrown from callback stack (@1999)
  • Fix broken only()/skip() in IE7/IE8 (@boneskull)
  • #2502: Fix broken stack trace filter on Node.js under Windows (@boneskull)
  • #2496: Fix diff output for objects instantiated with String constructor (more) (@boneskull)
3.0.2 August 08, 2016

:bug: Bug Fix

  • #2424: Fix error loading Mocha via Require.js ([@boneskull])
  • #2417: Fix execution of deeply nested describe.only() suites ([@not-an-aardvark])
  • Remove references to json-cov and html-cov reporters in CLI ([@boneskull])
3.0.1 August 04, 2016

:bug: Bug Fix

3.0.0-2 July 26, 2016

See #2350 and CHANGELOG.md in the v3.0.0 branch.

3.0.0-1 July 08, 2016

See #2350 for more information.

3.0.0-0 July 03, 2016

See #2350 for more information.

3.0.0 August 01, 2016

:boom: Breaking Changes

  • :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.

  • :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 (^).

  • .only() is no longer "fuzzy", can be used multiple times, and generally just works like you think it should. :joy:

  • 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:

    const assert = require('assert');
    
    it('should complete this test', function (done) {
      return new Promise(function (resolve) {
        assert.ok(true);
        resolve();
      })
        .then(done);
    });
    

    The above test will fail with Error: Resolution method is overspecified. Specify a callback *or* return a Promise; not both..

  • 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 for reasoning.

  • The dot reporter now uses more visually distinctive characters when indicating "pending" and "failed" tests.

  • Mocha no longer supports component.

  • The long-forsaken HTMLCov and JSONCov reporters--and any relationship to the "node-jscoverage" project--have been removed.

  • spec reporter now omits leading carriage returns (\r) in non-TTY environment.

:tada: Enhancements

  • #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])
  • #2000: Use distinctive characters in dot reporter; , will denote a "pending" test and ! will denote a "failing" test. (@elliottcable)
  • #1632: Throw a useful exception when a suite or test lacks a title. ([@a8m])
  • #1481: Better .only() behavior. ([@a8m])
  • #2334: Allow this.skip() in async tests and hooks. ([@boneskull])
  • #1320: Throw a useful exception when test resolution method is overspecified. (@jugglinmike)
  • #2364: Support --preserve-symlinks. (@rosswarren)

:bug: Bug Fixes

  • #2259: Restore ES3 compatibility. Specifically, support an environment lacking Date.prototype.toISOString(), JSON, or has a non-standard implementation of JSON. ([@ndhoule], [@boneskull])
  • #2286: Fix after() failing to execute if test skipped using this.skip() in beforeEach(); no longer marks the entire suite as "pending". ([@dasilvacontin], [@boneskull])
  • #2208: Fix function name display in markdown and html (browser) reporters. ([@ScottFreeCode])
  • #2299: Fix progress bar in html (browser) reporter. (@AviVahl)
  • #2307: Fix doc reporter crashing when test fails. (@jleyba)
  • #2323: Ensure browser entry point (browser-entry.js) is published to npm (for use with bundlers). ([@boneskull])
  • #2310: Ensure custom reporter with an absolute path works in Windows. (@silentcloud)
  • #2311: Fix problem wherein calling this.slow() without a value would blast any previously set value. ([@boneskull])
  • #1813: Ensure Mocha's own test suite will run in Windows. (@tswaters, @TimothyGu, [@boneskull])
  • #2317: Ensure all interfaces are displayed in --help on CLI. ([@ScottFreeCode])
  • #1644: Don't exhibit undefined behavior when calling this.timeout() with very large values (@callumacrae, [@boneskull])
  • #2361: Don't truncate name of thrown anonymous exception. ([@boneskull])
  • #2367: Fix invalid CSS. (@bensontrent)
  • #2401: Remove carriage return before each test line in spec reporter. (@Munter)

:nut_and_bolt: Other

  • Upgrade production dependencies to address security advisories (and because now we can): glob, commander, escape-string-regexp, and supports-color. ([@boneskull], @RobLoach)
  • Add Windows to CI. ([@boneskull], @TimothyGu)
  • Ensure appropriate engines field in package.json. (@shinnn, [@boneskull])
  • #2348: Upgrade ESLint to v2 (@anthony-redfox)

We :heart: our backers and sponsors!

:shipit:

2.5.3 May 25, 2016
  • #2112 - Fix HTML reporter regression causing duplicate error output (@danielstjules via 6d24063)
  • #2119 - Make HTML reporter failure/passed links preventDefault to avoid SPA's hash navigation (@jimenglish81 via 9e93efc)
2.5.2 May 24, 2016
  • #2178 - Avoid double and triple xUnit XML escaping (@graingert via 49b5ff1)
2.5.1 May 23, 2016

Thanks @entertainyou, @SimenB, @just-paja for the heads-up.

2.5.0 May 23, 2016

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).

Browser Tests in CI

We now run unit tests against PhantomJS v1.x and an assortment of browsers on SauceLabs, including:

  • Internet Explorer v8.0
  • Chrome (latest)
  • Firefox (latest)
  • Safari (latest)
  • Microsoft Edge (latest)

To accomplish this, we now run Mocha's unit tests (and a handful of integration tests) via Karma and a modified karma-mocha. Along the way, we had to solve issue #880 (apologies to @mderijcke and @sukima who had PRs addressing this), as well as replace most usages of should with expect.js for IE8.

Going forward, when sending PRs, your code will only run against PhantomJS v1.x (and not hit SauceLabs) because security.

Node.js 6.x

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.

"Minor" Release

You'll see mostly bug fixes below, but also a couple features--as such, it's a "minor" release.

TYVM

Thanks to everyone who contributed, and our fabulous sponsors and backers!

2.4.5 January 28, 2016
  • [#2080], [#2078], [#2072], [#2073], #1200 - Revert changes to console colors in changeset 1192914 and subsequent related changes thereafter. Restores compatibility with IE8 & PhantomJS. See also mantoni/mochify.js#129 and openlayers/ol3#4746 ([@boneskull])
  • #2082 - Fix several test assertions ([@mislav])
2.4.4 January 27, 2016
  • #2080 - Fix broken RequireJS compatibility ([@boneskull])
2.4.3 January 27, 2016
  • #2078 - Fix broken IE8 ([@boneskull])
2.4.2 January 27, 2016
2.4.1 January 26, 2016
  • #2067 - Fix HTML/doc reporter regressions ([@danielstjules])
2.3.4 November 15, 2015
  • Update debug dependency to 2.2.0
  • remove duplication of mocha.opts on process.argv
  • Fix typo in test/reporters/nyan.js
2.3.3 September 21, 2015
2.3.2 September 08, 2015
  • #1868 - Fix compatibility with older versions of NPM ([@boneskull])
2.3.1 September 07, 2015
  • #1812 - Fix: Bail flag causes before() hooks to be run even after a failure ([@aaroncrows])
2.3.0 August 31, 2015
2.2.5 May 14, 2015
2.2.4 April 08, 2015
  • Load mocha.opts in _mocha for now (close #1645)
2.2.3 April 07, 2015
  • fix(reporter/base): string diff - issue #1241
  • fix(reporter/base): string diff - issue #1241
  • fix(reporter/base): don't show diffs for errors without expectation
  • fix(reporter/base): don't assume error message is first line of stack
  • improve: dry up reporter/base test
  • fix(reporter/base): explicitly ignore showDiff #1614
  • Add iojs to travis build
  • Pass --allow-natives-syntax flag to node.
  • Support --harmony_classes flag for io.js
  • Fix 1556: Update utils.clean to handle newlines in func declarations
  • Fix 1606: fix err handling in IE <= 8 and non-ES5 browsers
  • Fix 1585: make _mocha executable again
  • chore(package.json): add a8m as a contributor
  • Fixed broken link on html-cov reporter
  • support --es_staging flag
  • fix issue where menu overlaps content.
  • update contributors in package.json
  • Remove trailing whitespace from reporter output
  • Remove contributors list from readme
  • log third-party reporter errors
  • [Fix] Exclude not own properties when looping on options
  • fix: support node args in mocha.opts (close #1573)
  • fix(reporter/base): string diff - issue #1241
2.2.1 March 09, 2015
  • Fix passing of args intended for node/iojs.
2.2.0 March 07, 2015
  • Update mocha.js
  • Add --fgrep. Use grep for RegExp, fgrep for str
  • Ignore async global errors after spec resolution
  • Fixing errors that prevent mocha.js from loading in the browser - fixes #1558
  • fix(utils): issue #1558 + make
  • add ability to delay root suite; closes #362, closes #1124
  • fix insanity in http tests
  • update travis: add node 0.12, add gitter, remove slack
  • building
  • resolve #1548: ensure the environment's "node" executable is used
  • reporters/base: use supports-color to detect colorable term
  • travis: use docker containers
  • small fix: commander option for --expose-gc
  • Ignore asynchronous errors after global failure
  • Improve error output when a test fails with a non-error
  • updated travis badge, uses svg instead of img
  • Allow skip from test context for #332
  • [JSHINT] Unnecessary semicolon fixed in bin/_mocha
  • Added a reminder about the done() callback to test timeout error messages
  • fixes #1496, in Mocha.run(fn), check if fn exists before executing it, added tests too
  • Add Harmony Proxy flag for iojs
  • test(utils|ms|*): test existing units
  • add support for some iojs flags
  • fix(utils.stringify): issue #1229, diff viewer
  • Remove slack link
  • Prevent multiple 'grep=' querystring params in html reporter
  • Use grep as regexp (close #1381)
  • utils.stringify should handle objects without an Object prototype
  • in runnable test, comparing to undefined error's message rather than a literal
  • Fix test running output truncation on async STDIO
  • amended for deprecated customFds option in child_process
2.1.0 December 23, 2014
  • showDiff: don???t stringify strings
  • Clean up unused module dependencies.
  • Filter zero-length strings from mocha.opts
  • only write to stdout in reporters
  • Revert "only write to stdout in reporters"
  • Print colored output only to a tty
  • update summary in README.md
  • rename Readme.md/History.md to README.md/HISTORY.md because neurotic
  • add .mailmap to fix "git shortlog" or "git summary" output
  • fixes #1461: nyan-reporter now respects Base.useColors, fixed bug where Base.color would not return a string when str wasn't a string.
  • Use existing test URL builder in failed replay links
  • modify .travis.yml: use travis_retry; closes #1449
  • fix -t 0 behavior; closes #1446
  • fix tests (whoops)
  • improve diff behavior
  • Preserve pathname when linking to individual tests
  • Fix test
  • Tiny typo in comments fixed
  • after hooks now being called on failed tests when using bail, fixes #1093
  • fix throwing undefined/null now makes tests fail, fixes #1395
  • compiler extensions are added as watched extensions, removed non-standard extensions from watch regex, resolves #1221
  • prefix/namespace for suite titles in markdown reporter, fixes #554
  • fix more bad markdown in CONTRIBUTING.md
  • fix bad markdown in CONTRIBUTING.md
  • add setImmediate/clearImmediate to globals; closes #1435
  • Fix buffer diffs (closes #1132, closes #1433)
  • add a CONTRIBUTING.md. closes #882
  • fix intermittent build failures (maybe). closes #1407
  • add Slack notification to .travis.yml
  • Fix slack link
  • Add slack room to readme
  • Update maintainers
  • update maintainers and contributors
  • resolves #1393: kill children with more effort on SIGINT
  • xunit reporter support for optionally writing to a file
  • if a reporter has a .done method, call it before exiting
  • add support for reporter options
  • only write to stdout in reporters
2.0.1 October 23, 2014  
2.0.0 October 22, 2014
  • remove: support for node 0.6.x, 0.4.x
  • fix: landing reporter with non ansi characters (#211)
  • fix: html reporter - preserve query params when navigating to suites/tests (#1358)
  • fix: json stream reporter add error message to failed test
  • fix: fixes for visionmedia -> mochajs
  • fix: use stdio, fixes node deprecation warnings (#1391)
1.21.5 October 11, 2014
  • fix: build for NodeJS v0.6.x
  • fix: do not attempt to highlight syntax when non-HTML reporter is used
  • update: escape-string-regexp to 1.0.2.
  • fix: botched indentation in canonicalize()
  • fix: .gitignore: ignore .patch and .diff files
  • fix: changed 'Catched' to 'Caught' in uncaught exception error handler messages
  • add: pending field for json reporter
  • fix: Runner.prototype.uncaught: don't double-end runnables that already have a state.
  • fix: --recursive, broken by f0facd2e
  • update: replaces escapeRegexp with the escape-string-regexp package.
  • update: commander to 2.3.0.
  • update: diff to 1.0.8.
  • fix: ability to disable syntax highlighting (#1329)
  • fix: added empty object to errorJSON() call to catch when no error is present
  • fix: never time out after calling enableTimeouts(false)
  • fix: timeout(0) will work at suite level (#1300)
  • Fix for --watch+only() issue (#888 )
  • fix: respect err.showDiff, add Base reporter test (#810)
1.21.4 August 06, 2014  
1.21.3 July 28, 2014  
1.21.2 July 28, 2014  
1.21.1 July 27, 2014  
1.21.0 July 24, 2014
  • add: --no-timeouts option (#1262, #1268)
  • add: --*- deprecation node flags (#1217)
  • add: --watch-extensions argument (#1247)
  • change: spec reporter is default (#1228)
  • fix: diff output showing incorrect +/- (#1182)
  • fix: diffs of circular structures (#1179)
  • fix: re-render the progress bar when progress has changed only (#1151)
  • fix support for environments with global and window (#1159)
  • fix: reverting to previously defined onerror handler (#1178)
  • fix: stringify non error objects passed to done() (#1270)
  • fix: using local ui, reporters (#1267)
  • fix: cleaning es6 arrows (#1176)
  • fix: don't include attrs in failure tag for xunit (#1244)
  • fix: fail tests that return a promise if promise is rejected w/o a reason (#1224)
  • fix: showing failed tests in doc reporter (#1117)
  • fix: dot reporter dots being off (#1204)
  • fix: catch empty throws (#1219)
  • fix: honoring timeout for sync operations (#1242)
  • update: growl to 1.8.0
1.20.1 June 04, 2014
  • update: should dev dependency to ~4.0.0 (#1231)
1.20.0 May 28, 2014
  • add: filenames to suite objects (#1222)
1.19.0 May 18, 2014
  • add: browser script option to package.json
  • add: export file in Mocha.Test objects (#1174)
  • add: add docs for wrapped node flags
  • fix: mocha.run() to return error status in browser (#1216)
  • fix: clean() to show failure details (#1205)
  • fix: regex that generates html for new keyword (#1201)
  • fix: sibling suites have inherited but separate contexts (#1164)
1.18.2 March 18, 2014
  • fix: html runner was prevented from using #mocha as the default root el (#1162)
1.18.1 March 18, 2014
  • fix: named before/after hooks in bdd, tdd, qunit interfaces (#1161)
1.18.0 March 14, 2014
  • add: promise support (#329)
  • add: named before/after hooks (#966)
1.17.1 January 22, 2014
  • fix: expected messages in should.js (should.js#168)
  • fix: expect errno global in node versions < v0.9.11 (#1111)
  • fix: unreliable checkGlobals optimization (#1110)
1.17.0 January 09, 2014
  • add: able to require globals (describe, it, etc.) through mocha (#1077)
  • fix: abort previous run on --watch change (#1100)
  • fix: reset context for each --watch triggered run (#1099)
  • fix: error when cli can't resolve path or pattern (#799)
  • fix: canonicalize objects before stringifying and diffing them (#1079)
  • fix: make CR call behave like carriage return for non tty (#1087)
1.16.2 December 23, 2013
  • fix: couple issues with ie 8 (#1082, #1081)
  • fix: issue running the xunit reporter in browsers (#1068)
  • fix: issue with firefox < 3.5 (#725)
1.16.1 December 20, 2013
  • fix: recompiled for missed changes from the last release
1.16.0 December 19, 2013
  • add: Runnable.globals(arr) for per test global whitelist (#1046)
  • add: mocha.throwError(err) for assertion libs to call (#985)
  • remove: --watch's spinner (#806)
  • fix: duplicate test output for multi-line specs in spec reporter (#1006)
  • fix: gracefully exit on SIGINT (#1063)
  • fix expose the specified ui only in the browser (#984)
  • fix: ensure process exit code is preserved when using --no-exit (#1059)
  • fix: return true from window.onerror handler (#868)
  • fix: xunit reporter to use process.stdout.write (#1068)
  • fix: utils.clean(str) indentation (#761)
  • fix: xunit reporter returning test duration a NaN (#1039)
1.15.1 December 03, 2013
  • fix: recompiled for missed changes from the last release
1.15.0 December 02, 2013
  • add: --no-exit to prevent process.exit() (#1018)
  • fix: using inline diffs (#1044)
  • fix: show pending test details in xunit reporter (#1051)
  • fix: faster global leak detection (#1024)
  • fix: yui compression (#1035)
  • fix: wrapping long lines in test results (#1030, #1031)
  • fix: handle errors in hooks (#1043)
1.14.0 November 03, 2013
  • add: unified diff (#862)
  • add: set MOCHA_COLORS env var to use colors (#965)
  • add: able to override tests links in html reporters (#776)
  • remove: teamcity reporter (#954)
  • update: commander dependency to 2.0.0 (#1010)
  • fix: mocha --ui will try to require the ui if not built in, as --reporter does (#1022)
  • fix: send cursor commands only if isatty (#184, #1003)
  • fix: include assertion message in base reporter (#993, #991)
  • fix: consistent return of it, it.only, and describe, describe.only (#840)
1.13.0 September 15, 2013
  • add: sort test files with --sort (#813)
  • update: diff dependency to 1.0.7
  • update: glob dependency to 3.2.3 (#927)
  • fix: diffs show whitespace differences (#976)
  • fix: improve global leaks (#783)
  • fix: firefox window.getInterface leak
  • fix: accessing iframe via window[iframeIndex] leak
  • fix: faster global leak checking
  • fix: reporter pending css selector (#970)
1.12.1 August 30, 2013
  • remove test.js from .gitignore
  • update included version of ms.js
1.12.0 July 01, 2013
  • add: prevent diffs for differing types. Closes #900
  • add Mocha.process hack for phantomjs
  • fix: use compilers with requires
  • fix regexps in diffs. Closes #890
  • fix xunit NaN on failure. Closes #894
  • fix: strip tab indentation in clean utility method
  • fix: textmate bundle installation
1.11.0 June 12, 2013
  • add --prof support
  • add --harmony support
  • add --harmony-generators support
  • add "Uncaught " prefix to uncaught exceptions
  • add web workers support
  • add suite.skip()
  • change to output # of pending / passing even on failures. Closes #872
  • fix: prevent hooks from being called if we are bailing
  • fix this.timeout(0)
1.10.0 May 22, 2013
  • add add better globbing support for windows via glob module
  • add support to pass through flags such as --debug-brk=1234. Closes #852
  • add test.only, test.skip to qunit interface
  • change to always use word-based diffs for now. Closes #733
  • change mocha init tests.html to index.html
  • fix process global leak in the browser
  • fix: use resolve() instead of join() for --require
  • fix: filterLeaks() condition to not consider indices in global object as leaks
  • fix: restrict mocha.css styling to #mocha id
  • fix: save timer references to avoid Sinon interfering in the browser build.
1.9.0 April 03, 2013
  • add improved setImmediate implementation
  • replace --ignore-leaks with --check-leaks
  • change default of ignoreLeaks to true. Closes #791
  • remove scrolling for HTML reporter
  • fix retina support
  • fix tmbundle, restrict to js scope
1.8.2 March 11, 2013
  • add setImmediate support for 0.10.x
  • fix mocha -w spinner on windows
1.8.1 January 30, 2013
  • fix .bail() arity check causing it to default to true
1.8.0 January 08, 2013
  • add Mocha() options bail support
  • add Mocha#bail() method
  • add instanceof check back for inheriting from Error
  • add component.json
  • add diff.js to browser build
  • update growl
  • fix TAP reporter failures comment :D
1.7.4 December 06, 2012
  • add total number of passes and failures to TAP
  • remove .bind() calls. re #680
  • fix indexOf. Closes #680
1.7.3 November 30, 2012
  • fix uncaught error support for the browser
  • revert uncaught "fix" which breaks node
1.7.2 November 29, 2012
  • fix uncaught errors to expose the original error message
1.7.1 November 23, 2012  
1.7.0 November 07, 2012
  • add --async-only support to prevent false positives for missing done()
  • add sorting by filename in code coverage
  • add HTML 5 doctype to browser template.
  • add play button to html reporter to rerun a single test
  • add this.timeout(ms) as Suite#timeout(ms). Closes #599
  • update growl dependency to 1.6.x
  • fix encoding of test-case ?grep. Closes #637
  • fix unicode chars on windows
  • fix dom globals in Opera/IE. Closes #243
  • fix markdown reporter a tags
  • fix this.timeout("5s") support
1.6.0 October 02, 2012
  • add object diffs when err.showDiff is present
  • add hiding of empty suites when pass/failures are toggled
  • add faster .length checks to checkGlobals() before performing the filter
1.5.0 September 21, 2012
  • add ms() to .slow() and .timeout()
  • add Mocha#checkLeaks() to re-enable global leak checks
  • add this.slow() option [aheckmann]
  • add tab, CR, LF to error diffs for now
  • add faster .checkGlobals() solution [guille]
  • remove fn.call() from reduce util
  • remove fn.call() from filter util
  • fix forEach. Closes #582
  • fix relaying of signals [TooTallNate]
  • fix TAP reporter grep number
1.4.3 September 21, 2012  
1.4.2 September 01, 2012
  • add support to multiple Mocha#globals() calls, and strings
  • add mocha.reporter() constructor support [jfirebaugh]
  • add mocha.timeout()
  • move query-string parser to utils.js
  • move highlight code to utils.js
  • fix third-party reporter support [exogen]
  • fix client-side API to match node-side [jfirebaugh]
  • fix mocha in iframe [joliss]
1.4.1 August 28, 2012
  • add missing Markdown export
  • fix Mocha#grep(), escape regexp strings
  • fix reference error when devicePixelRatio is not defined. Closes #549
1.4.0 August 23, 2012
  • add mkdir -p to mocha init. Closes #539
  • add .only(). Closes #524
  • add .skip(). Closes #524
  • change str.trim() to use utils.trim(). Closes #533
  • fix HTML progress indicator retina display
  • fix url-encoding of click-to-grep HTML functionality
1.3.2 August 01, 2012
  • fix exports double-execution regression. Closes #531
1.3.1 August 01, 2012
  • add passes/failures toggling to HTML reporter
  • add pending state to xit() and xdescribe() [Brian Moore]
  • add the @charset "UTF-8"; to fix #522 with FireFox. [Jonathan Creamer]
  • add border-bottom to #stats links
  • add check for runnable in Runner#uncaught(). Closes #494
  • add 0.4 and 0.6 back to travis.yml
  • add -E, --growl-errors to growl on failures only
  • add prefixes to debug() names. Closes #497
  • add Mocha#invert() to js api
  • change dot reporter to use sexy unicode dots
  • fix error when clicking pending test in HTML reporter
  • fix make tm
1.3.0 July 05, 2012
  • add window scrolling to HTML reporter
  • add v8 --trace-* option support
  • add support for custom reports via --reporter MODULE
  • add --invert switch to invert --grep matches
  • fix export of Nyan reporter. Closes #495
  • fix escaping of HTML suite titles. Closes #486
  • fix done() called multiple times with an error test
  • change --grep - regexp escape the input
1.2.2 June 28, 2012
  • Added 0.8.0 support
1.2.1 June 25, 2012
  • Added this.test.error(err) support to after each hooks. Closes #287
  • Added: export top-level suite on global mocha object (mocha.suite). Closes #448
  • Fixed js code block format error in markdown reporter
  • Fixed deprecation warning when using path.existsSync
  • Fixed --globals with wildcard
  • Fixed chars in nyan when his head moves back
  • Remove --growl from test/mocha.opts. Closes #289
1.2.0 June 17, 2012
  • Added nyan reporter [Atsuya Takagi]
  • Added mocha init <path> to copy client files
  • Added "specify" synonym for "it" [domenic]
  • Added global leak wildcard support [nathanbowser]
  • Fixed runner emitter leak. closes #432
  • Fixed omission of .js extension. Closes #454
1.1.0 May 31, 2012
  • Added: check each mocha(1) arg for directories to walk
  • Added --recursive [tricknotes]
  • Added context for BDD [hokaccha]
  • Added styling for new clickable titles
  • Added clickable suite titles to HTML reporter
  • Added warning when strings are thrown as errors
  • Changed: green arrows again in HTML reporter styling
  • Changed ul/li elements instead of divs for better copy-and-pasting [joliss]
  • Fixed issue #325 - add better grep support to js api
  • Fixed: save timer references to avoid Sinon interfering.
1.0.3 April 30, 2012
  • Fixed string diff newlines
  • Fixed: removed mocha.css target. Closes #401
1.0.2 April 25, 2012
  • Added HTML reporter duration. Closes #47
  • Fixed: one postMessage event listener [exogen]
  • Fixed: allow --globals to be used multiple times. Closes #100 [brendannee]
  • Fixed #158: removes jquery include from browser tests
  • Fixed grep. Closes #372 [brendannee]
  • Fixed #166 - When grepping don't display the empty suites
  • Removed test/browser/style.css. Closes #385
1.0.1 April 04, 2012
  • Fixed .timeout() in hooks
  • Fixed: allow callback for mocha.run() in client version
  • Fixed browser hook error display. Closes #361
1.0.0 March 24, 2012
  • Added js API. Closes #265
  • Added: initial run of tests with --watch. Closes #345
  • Added: mark location as a global on the CS. Closes #311
  • Added markdown reporter (github flavour)
  • Added: scrolling menu to coverage.html. Closes #335
  • Added source line to html report for Safari [Tyson Tate]
  • Added "min" reporter, useful for --watch [Jakub Ne??et??il]
  • Added support for arbitrary compilers via . Closes #338 [Ian Young]
  • Added Teamcity export to lib/reporters/index [Michael Riley]
  • Fixed chopping of first char in error reporting. Closes #334 [reported by topfunky]
  • Fixed terrible FF / Opera stack traces
0.14.1 March 06, 2012
  • Added lib-cov to .npmignore
  • Added reporter to mocha.run([reporter]) as argument
  • Added some margin-top to the HTML reporter
  • Removed jQuery dependency
  • Fixed --watch: purge require cache. Closes #266
0.14.0 March 01, 2012
  • Added string diff support for terminal reporters
0.13.0 February 24, 2012
  • Added preliminary test coverage support. Closes #5
  • Added HTMLCov reporter
  • Added JSONCov reporter [kunklejr]
  • Added xdescribe() and xit() to the BDD interface. Closes #263 (docs * Changed: make json reporter output pretty json
  • Fixed node-inspector support, swapped --debug for debug to match node. needed) Closes #247
0.12.1 February 15, 2012
  • Added npm docs mocha support [TooTallNate]
  • Added a Context object used for hook and test-case this. Closes #253
  • Fixed Suite#clone() .ctx reference. Closes #262
0.12.0 February 09, 2012
  • Added .coffee --watch support. Closes #242
  • Added support to --require files relative to the CWD. Closes #241
  • Added quick n dirty syntax highlighting. Closes #248
  • Changed: made HTML progress indicator smaller
  • Fixed xunit errors attribute [dhendo]
0.11.0 February 03, 2012  
0.10.2 January 21, 2012
  • Fixed suite count in reporter stats. Closes #222
  • Fixed done() after timeout error reporting [Phil Sung]
  • Changed the 0-based errors to 1
0.10.1 January 17, 2012
  • Added support for node 0.7.x
  • Fixed absolute path support. Closes #215 [kompiro]
  • Fixed --no-colors option [Jussi Virtanen]
  • Fixed Arial CSS typo in the correct file
0.10.0 January 13, 2012
  • Added -b, --bail to exit on first exception [guillermo]
  • Added support for -gc / --expose-gc [TooTallNate]
  • Added qunit-inspired interface
  • Added MIT LICENSE. Closes #194
  • Added: --watch all .js in the CWD. Closes #139
  • Fixed self.test reference in runner. Closes #189
  • Fixed double reporting of uncaught exceptions after timeout. Closes #195
0.9.0 January 05, 2012  
0.8.1 December 30, 2011
  • Fixed reporting of uncaught exceptions. Closes #183
  • Fixed error message defaulting [indutny]
  • Changed mocha(1) from bash to node for windows [Nathan Rajlich]
0.8.0 December 28, 2011
  • Added XUnit reporter [FeeFighters/visionmedia]
  • Added say(1) notification support [Maciej Ma??ecki]
  • Changed: fail when done() is invoked with a non-Error. Closes #171
  • Fixed err.stack, defaulting to message. Closes #180
  • Fixed: make tm mkdir -p the dest. Closes #137
  • Fixed mocha(1) --help bin name
  • Fixed -d for --debug support
0.7.1 December 22, 2011
  • Removed mocha-debug(1), use mocha --debug
  • Fixed CWD relative requires
  • Fixed growl issue on windows [Raynos]
  • Fixed: platform specific line endings [TooTallNate]
  • Fixed: escape strings in HTML reporter. Closes #164
0.7.0 December 18, 2011
  • Added support for IE{7,8} [guille]
  • Changed: better browser nextTick implementation [guille]
0.6.0 December 18, 2011
  • Added setZeroTimeout timeout for browser (nicer stack traces). Closes #153
  • Added "view source" on hover for HTML reporter to make it obvious
  • Changed: replace custom growl with growl lib
  • Fixed duplicate reporting for HTML reporter. Closes #154
  • Fixed silent hook errors in the HTML reporter. Closes #150
0.5.0 December 15, 2011
  • Added: push node_modules directory onto module.paths for relative require Closes #93
  • Added teamcity reporter [blindsey]
  • Fixed: recover from uncaught exceptions for tests. Closes #94
  • Fixed: only emit "test end" for uncaught within test, not hook
0.4.0 December 15, 2011
  • Added support for test-specific timeouts via this.timeout(0). Closes #134
  • Added guillermo's client-side EventEmitter. Closes #132
  • Added progress indicator to the HTML reporter
  • Fixed slow browser tests. Closes #135
  • Fixed "suite" color for light terminals
  • Fixed require() leak spotted by [guillermo]
0.3.6 December 09, 2011
  • Removed suite merging (for now)
0.3.4 December 09, 2011
  • Added: allow done() to be called with non-Error
  • Added: return Runner from mocha.run(). Closes #126
  • Fixed: run afterEach even on failures. Closes #125
  • Fixed clobbering of current runnable. Closes #121
0.3.3 December 08, 2011
  • Fixed hook timeouts. Closes #120
  • Fixed uncaught exceptions in hooks
0.3.2 December 05, 2011
  • Fixed weird reporting when err.message is not present
0.3.1 December 04, 2011
  • Fixed hook event emitter leak. Closes #117
  • Fixed: export Spec constructor. Closes #116
0.3.0 December 04, 2011
  • Added -w, --watch. Closes #72
  • Added --ignore-leaks to ignore global leak checking
  • Added browser ?grep=pattern support
  • Added --globals <names> to specify accepted globals. Closes #99
  • Fixed mocha-debug(1) on some systems. Closes #232
  • Fixed growl total, use runner.total
0.2.0 November 30, 2011
  • Added --globals <names> to specify accepted globals. Closes #99
  • Fixed funky highlighting of messages. Closes #97
  • Fixed mocha-debug(1). Closes #232
  • Fixed growl total, use runner.total
0.1.0 November 29, 2011
  • Added suiteSetup and suiteTeardown to TDD interface [David Henderson]
  • Added growl icons. Closes #84
  • Fixed coffee-script support
0.0.8 November 25, 2011
  • Fixed: use Runner#total for accurate reporting
0.0.7 November 25, 2011
  • Added Hook
  • Added Runnable
  • Changed: Test is Runnable
  • Fixed global leak reporting in hooks
  • Fixed: > 2 calls to done() only report the error once
  • Fixed: clear timer on failure. Closes #80
0.0.6 November 25, 2011
  • Fixed return on immediate async error. Closes #80
0.0.5 November 25, 2011
  • Fixed: make mocha.opts whitespace less picky [kkaefer]
0.0.4 November 24, 2011
  • Added --interfaces
  • Added --reporters
  • Added -c, --colors. Closes #69
  • Fixed hook timeouts
0.0.3 November 24, 2011
  • Added -C, --no-colors to explicitly disable
  • Added coffee-script support
0.0.2 November 23, 2011
  • Fixed global leak detection due to Safari bind() change
  • Fixed: escape html entities in Doc reporter
  • Fixed: escape html entities in HTML reporter
  • Fixed pending test support for HTML reporter. Closes #66
0.0.1 November 22, 2011
  • Added --timeout second shorthand support, ex --timeout 3s.
  • Fixed "test end" event for uncaughtExceptions. Closes #61
0.0.1-alpha6 November 20, 2011
  • Added travis CI support (needs enabling when public)
  • Added preliminary browser support
  • Added make mocha.css target. Closes #45
  • Added stack trace to TAP errors. Closes #52
  • Renamed tearDown to teardown. Closes #49
  • Fixed: cascading hooksc. Closes #30
  • Fixed some colors for non-tty
  • Fixed errors thrown in sync test-cases due to nextTick
  • Fixed Base.window.width... again give precedence to 0.6.x
0.0.1-alpha5 November 17, 2011
  • Added doc reporter. Closes #33
  • Added suite merging. Closes #28
  • Added TextMate bundle and make tm. Closes #20
0.0.1-alpha4 November 15, 2011
  • Fixed getWindowSize() for 0.4.x
0.0.1-alpha3 November 15, 2011
  • Added -s, --slow <ms> to specify "slow" test threshold
  • Added mocha-debug(1)
  • Added mocha.opts support. Closes #31
  • Added: default [files] to test/*.js
  • Added protection against multiple calls to done(). Closes #35
  • Changed: bright yellow for slow Dot reporter tests
0.0.1-alpha2 November 14, 2011  
0.0.1-alpha1 November 08, 2011
  • Initial release