Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
3.5.3
->8.0.1
2.2.48
->8.0.0
Release Notes
mochajs/mocha
v8.0.1
Compare Source
The obligatory patch after a major.
🐛 Fixes
--parallel
when combined with--watch
(@boneskull)v8.0.0
Compare Source
In this major release, Mocha adds the ability to run tests in parallel. Better late than never! Please note the breaking changes detailed below.
Let's welcome @giltayar and @nicojs to the maintenance team!
💥 Breaking Changes
#4164: Mocha v8.0.0 now requires Node.js v10.12.0 or newer. Mocha no longer supports the Node.js v8.x line ("Carbon"), which entered End-of-Life at the end of 2019 (@UlisesGascon)
#4175: Having been deprecated with a warning since v7.0.0,
mocha.opts
is no longer supported (@juergba)✨ WORKAROUND: Replace
mocha.opts
with a configuration file.#4260: Remove
enableTimeout()
(this.enableTimeout()
) from the context object (@craigtaub)✨ WORKAROUND: Replace usage of
this.enableTimeout(false)
in your tests withthis.timeout(0)
.#4315: The
spec
option no longer supports a comma-delimited list of files (@juergba)✨ WORKAROUND: Use an array instead (e.g.,
"spec": "foo.js,bar.js"
becomes"spec": ["foo.js", "bar.js"]
).#4309: Drop support for Node.js v13.x line, which is now End-of-Life (@juergba)
#4282:
--forbid-only
will throw an error even if exclusive tests are avoided via--grep
or other means (@arvidOtt)#4223: The context object's
skip()
(this.skip()
) in a "before all" (before()
) hook will no longer execute subsequent sibling hooks, in addition to hooks in child suites (@juergba)#4178: Remove previously soft-deprecated APIs (@wnghdcjfe):
Mocha.prototype.ignoreLeaks()
Mocha.prototype.useColors()
Mocha.prototype.useInlineDiffs()
Mocha.prototype.hideDiff()
🎉 Enhancements
#4245: Add ability to run tests in parallel for Node.js (see docs) (@boneskull)
❗ See also #4244; Root Hook Plugins (docs) -- root hooks must be defined via Root Hook Plugins to work in parallel mode
#4304:
--require
now works with ES modules (@JacobLey)#4299: In some circumstances, Mocha can run ES modules under Node.js v10 -- use at your own risk! (@giltayar)
📖 Documentation
🔩 Other
🐛 Fixes
(All bug fixes in Mocha v8.0.0 are also breaking changes, and are listed above)
v7.2.0
Compare Source
🎉 Enhancements
🐛 Fixes
--forbid-only
does not recognizeit.only
whenbefore
crashes (@arvidOtt)📖 Documentation
🔩 Other
v7.1.2
Compare Source
🔩 Other
📖 Documentation
v7.1.1
Compare Source
🔒 Security Fixes
🐛 Fixes
runner
listening tostart
andend
events (@juergba)📖 Documentation
v7.1.0
Compare Source
🎉 Enhancements
#4038: Add Node.js native ESM support (@giltayar)
Mocha supports writing your test files as ES modules:
--experimental-modules
optionNote: Node.JS native ECMAScript Modules implementation has status: Stability: 1 - Experimental
🐛 Fixes
allowUncaught
option (@juergba)📖 Documentation
package.json
(@outsideris)🔩 Other
v7.0.1
Compare Source
🐛 Fixes
reporterOptions
(@holm)📖 Documentation
🔩 Other
v7.0.0
Compare Source
💥 Breaking Changes
--debug
/--debug-brk
and deprecatedebug
argument (@juergba)--list-interfaces
replaces--interfaces
--list-reporters
replaces--reporters
this.skip()
(@juergba):it
test, relatedafterEach
hooks are now executedbeforeEach
hook, subsequent innerbeforeEach
hooks are now skipped and relatedafterEach
hooks are executedthis.skip()
withinafter
hooksgetOptions()
andlib/cli/options.js
(@juergba)pending
test: don't swallow, but retrospectively fail the test for correct exit code (@juergba)Mocha
constructor's option names with command-line options (@juergba)🎉 Enhancements
--watch
mode with chokidar (@geigerzaehler):--watch-files
and--watch-ignore
--watch-extensions
📠 Deprecations
These are soft-deprecated, and will emit a warning upon use. Support will be removed in (likely) the next major version of Mocha:
mocha.opts
(@juergba)🐛 Fixes
--inspect-brk
/--inspect
(@juergba)Mocha
constructor: improve browser setup (@juergba)--allow-uncaught
withthis.skip()
(@juergba)🔍 Coverage
📖 Documentation
done()
(@jgehrcke):coffee:
with emoji ☕️ (@pzrq)sh
tobash
for code block in docs/index.md (@HyunSangHan)🔩 Other
package.json
(@Munter)v6.2.3
Compare Source
🔒 Security Fixes
v6.2.2
Compare Source
🐛 Fixes
EVENT_RUN_END
events upon uncaught exception (@juergba)html
reporter (browser) (@pec9399)📖 Documentation
v6.2.1
Compare Source
🐛 Fixes
📖 Documentation
v6.2.0
Compare Source
🎉 Enhancements
🐛 Fixes
--file
(@gabegorelick)global
orglobals
(@pascalpp)_mocha
binary (@juergba)--timeout
/--slow
string values and duplicate arguments (@boneskull, @juergba)📖 Documentation
🔍 Coverage
--watch
options (@geigerzaehler)🔩 Other
--watch
mode behavior (@geigerzaehler)runWatch
into separate module (@geigerzaehler)mocha.min.js
file to stacktrace filter (@brian-lagerman)--exclude
to--ignore
and create alias (@boneskull)mocha.css
(@DanielRuf)v6.1.4
Compare Source
🔒 Security Fixes
v6.1.3
Compare Source
🐛 Fixes
yargs
-related global scope pollution (@inukshuk)pnpm
(@boneskull)v6.1.2
Compare Source
🐛 Fixes
v6.1.1
Compare Source
🐛 Fixes
v6.1.0
Compare Source
🔒 Security Fixes
🎉 Enhancements
options
parameter (@plroebuck).jsonc
extension (@sstephant)📠 Deprecations
These are soft-deprecated, and will emit a warning upon use. Support will be removed in (likely) the next major version of Mocha:
this.skip()
for "after all" hooks (@juergba)🐛 Fixes
this.skip()
in "before each" hooks (@juergba)--allow-uncaught
for uncaught exceptions thrown inside hooks (@givanse)and some regressions:
Suite
cloning by copyingroot
property (@fatso83)📖 Documentation
🔩 Other
v6.0.2
Compare Source
🐛 Fixes
Two more regressions fixed:
mocha.opts
(@boneskull)--require
does not break on module names that look like certainnode
flags (@boneskull)v6.0.1
Compare Source
The obligatory round of post-major-release bugfixes.
🐛 Fixes
These issues were regressions.
test.js
when run without arguments (@plroebuck)--ui
(@boneskull)--watch
(@boneskull)undefined
value from adescribe
callback is no longer considered deprecated (@boneskull)📖 Documentation
@mocha/docdash@2
(@tendonstrength)v6.0.0
Compare Source
🎉 Enhancements
require
cache (@plroebuck)🐛 Fixes
Suite#_onlyTests
andSuite#_onlySuites
(@vkarpov15)lookupFiles
andfiles
(@plroebuck)--delay
(and other boolean options) not working in all cases (@boneskull)--reporter-option
/--reporter-options
did not support comma-separated key/value pairs (@boneskull)📖 Documentation
🔩 Other
v5.2.0
Compare Source
🎉 Enhancements
mocha.opts
(@plroebuck)🐛 Fixes
before
hooks when using--bail
(@outsideris)📖 Documentation
🔩 Other
Buffer.from()
(@harrysarson)v5.1.1
Compare Source
🐛 Fixes
--watch
(@boneskull)v5.1.0
Compare Source
🎉 Enhancements
--exclude
option (@metalex9)🐛 Fixes
📖 Documentation
🔩 Other
v5.0.5
Compare Source
Welcome @outsideris to the team!
🐛 Fixes
--bail
failing to bail within hooks (@outsideris)describe.skip()
) (@outsideris)📖 Documentation
CHANGELOG.md
(@tagoro9, @honzajavorek)🔩 Other
v5.0.4
Compare Source
🐛 Fixes
v5.0.3
Compare Source
This patch features a fix to address a potential "low severity" ReDoS vulnerability in the diff package (a dependency of Mocha).
🔒 Security Fixes
diff
to v3.5.0 (@anishkny)🔩 Other
generateDiff()
inBase
reporter (@harrysarson)v5.0.2
Compare Source
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!
🐛 Fixes
#3226: Do not swallow errors that are thrown asynchronously from passing tests (@boneskull). Example:
```js
it('should actually fail, sorry!', function (done) {
// passing assertion
assert(true === true);
// test complete & is marked as passing
done();
// ...but something evil lurks within
setTimeout(() => {
throw new Error('chaos!');
}, 100);
});
```
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.Maintainers of external reporters: If a test of this class is encountered, the
Runner
instance will emit theend
event twice; you may need to change your reporter to userunner.once('end')
intead ofrunner.on('end')
.#3093: Fix stack trace reformatting problem (@outsideris)
🔩 Other
browser-stdout
to v1.3.1 (@honzajavorek)v5.0.1
Compare Source
...your garden-variety patch release.
Special thanks to Wallaby.js for their continued support! ❤️
🐛 Fixes
--delay
now works with.only()
(@silviom)📖 Documentation
--glob
docs (@outsideris)🔩 Other
v5.0.0
Compare Source
Mocha starts off 2018 right by again dropping support for unmaintained rubbish.
Welcome @vkarpov15 to the team!
💥 Breaking Changes
Practically speaking, only code which consumes (through bundling or otherwise) the userland buffer module should be affected. However, Mocha will no longer test against these browsers, nor apply fixes for them.
🎉 Enhancements
--file
command line argument (documentation) (@hswolff)🐛 Fixes
😎 Developer Experience
📖 Documentation
--no-timeouts
docs (@dfberry)done()
callback docs (@maraisr)README.md
organization (@xxczaki)🔩 Other
v4.1.0
Compare Source
4.1.0 / 2017-12-28
This is mainly a "housekeeping" release.
Welcome @Bamieh and @xxczaki to the team!
🐛: Fixes
progress
reporter now accepts reporter options (@canoztokmak)xit
inbdd
interface now properly returns itsTest
object (@Bamieh)--help
will now help you even if you have amocha.opts
(@Zarel)🎉 Enhancements
--no-diff
flag will completely disable diff output (@CapacitorSet)📖 Documentation
docs/
(@boneskull)🔩 Other
v4.0.1
Compare Source
4.0.1 / 2017-10-05
🐛 Fixes
v4.0.0
Compare Source
4.0.0 / 2017-10-02
You might want to read this before filing a new bug! 😝
💥 Breaking Changes
For more info, please read this article.
Compatibility
Default Behavior
node
from exiting will do so when run in Mocha. Supply the--exit
flag to revert to pre-v4.0.0 behavior (@ScottFreeCode, @boneskull)Reporter Output
stdout:
prefix from browser reporter logs (@skeggse)--forbid-pending
or--forbid-only
is specified (@ScottFreeCode)👎 Deprecations
--compilers
command-line option is now soft-deprecated and will emit a warning onSTDERR
. Read this for more info and workarounds (@ScottFreeCode, @boneskull)🎉 Enhancements
📖 Documentation
README.md
andCONTRIBUTING.md
(@skeggse)🔩 Other
Renovate configuration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻️ Rebasing: Renovate will not automatically rebase this PR, because other commits have been found.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR has been generated by Renovate Bot.