-
-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix leaking global 'uncaughtException' handler #4147
Conversation
71ce33c
to
0ee079b
Compare
@weswigham could you run a test with this batch in your environment, please? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep, I can confirm that this branch fixes the warnings in our environment.
014f01a
to
a4cfa86
Compare
Is there going to be a minor bump and publish with this patch at some point? |
We have two additional PR's regarding uncaught exceptions in process. I would like to have them merged first. |
4129: Update mocha to the latest version 🚀 r=jniles a=greenkeeper[bot] ## The devDependency [mocha](https://github.com/mochajs/mocha) was updated from `6.2.2` to `7.0.1`. This version is **not covered** by your **current version range**. If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update. --- **Publisher:** [juergba](https://www.npmjs.com/~juergba) **License:** MIT <details> <summary>Release Notes for v7.0.1</summary> <h1>7.0.1 / 2020-01-25</h1> <h2><g-emoji class="g-emoji" alias="bug" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f41b.png">🐛</g-emoji> Fixes</h2> <ul> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/issues/4165" data-hovercard-type="pull_request" data-hovercard-url="/mochajs/mocha/pull/4165/hovercard">#4165</a>: Fix exception when skipping tests programmatically (<a href="https://urls.greenkeeper.io/juergba"><strong>@juergba</strong></a>)</li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/issues/4153" data-hovercard-type="pull_request" data-hovercard-url="/mochajs/mocha/pull/4153/hovercard">#4153</a>: Restore backwards compatibility for <code>reporterOptions</code> (<a href="https://urls.greenkeeper.io/holm"><strong>@holm</strong></a>)</li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/issues/4150" data-hovercard-type="pull_request" data-hovercard-url="/mochajs/mocha/pull/4150/hovercard">#4150</a>: Fix recovery of an open test upon uncaught exception (<a href="https://urls.greenkeeper.io/juergba"><strong>@juergba</strong></a>)</li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/issues/4147" data-hovercard-type="pull_request" data-hovercard-url="/mochajs/mocha/pull/4147/hovercard">#4147</a>: Fix regression of leaking uncaught exception handler (<a href="https://urls.greenkeeper.io/juergba"><strong>@juergba</strong></a>)</li> </ul> <h2><g-emoji class="g-emoji" alias="book" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f4d6.png">📖</g-emoji> Documentation</h2> <ul> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/issues/4146" data-hovercard-type="pull_request" data-hovercard-url="/mochajs/mocha/pull/4146/hovercard">#4146</a>: Update copyright & trademark notices per OJSF (<a href="https://urls.greenkeeper.io/boneskull"><strong>@boneskull</strong></a>)</li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/issues/4140" data-hovercard-type="pull_request" data-hovercard-url="/mochajs/mocha/pull/4140/hovercard">#4140</a>: Fix broken links (<a href="https://urls.greenkeeper.io/KyoungWan"><strong>@KyoungWan</strong></a>)</li> </ul> <h2><g-emoji class="g-emoji" alias="nut_and_bolt" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f529.png">🔩</g-emoji> Other</h2> <ul> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/issues/4133" data-hovercard-type="pull_request" data-hovercard-url="/mochajs/mocha/pull/4133/hovercard">#4133</a>: Print more descriptive error message (<a href="https://urls.greenkeeper.io/Zirak"><strong>@Zirak</strong></a>)</li> </ul> </details> <details> <summary>Commits</summary> <p>The new version differs by 61 commits ahead by 61, behind by 17.</p> <ul> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/commit/d0f04e994f3e78939f0a947ef064881c7fec5188"><code>d0f04e9</code></a> <code>Release v7.0.1</code></li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/commit/2277958e32f48bed10f0cb2ceaf01e7b8045af35"><code>2277958</code></a> <code>update CHANGELOG for v7.0.1 [ci skip]</code></li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/commit/0be3f78491bbbcdc4dcea660ee7bfd557a225d9c"><code>0be3f78</code></a> <code>Fix exception when skipping tests programmatically (#4165)</code></li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/commit/c0f1d1456dbc068f0552a5ceaed0d9b95e940ce1"><code>c0f1d14</code></a> <code>uncaughtException: fix recovery when current test is still running (#4150)</code></li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/commit/9c10adab3340abd8baff147cb595256234d88de6"><code>9c10ada</code></a> <code>Fix backwards compability break for reporterOptions</code></li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/commit/a24683fd9273d0896a177d70c2368ada4f2c4882"><code>a24683f</code></a> <code>Throw a descriptive error when a non-function is given to a runnable (#4133)</code></li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/commit/579fd09db39a55b44c1f553df05c918bc62867be"><code>579fd09</code></a> <code>update copyright & trademark notices per OJSF; closes #4145</code></li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/commit/0e1ccbb915ba8c2f73134af5bebd357f3329b9b7"><code>0e1ccbb</code></a> <code>Fix leaking global 'uncaughtException' handler (#4147)</code></li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/commit/7d78f209c6a4f8ef4eba584fe10515fd3901830e"><code>7d78f20</code></a> <code>Broken links in docs (#4140)</code></li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/commit/69339a3e7710a790b106b922ce53fcb87772f689"><code>69339a3</code></a> <code>Release v7.0.0</code></li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/commit/99e085f1fb924deeb87290adb476f4e375e72392"><code>99e085f</code></a> <code>update CHANGELOG for v7.0.0 [ci skip]</code></li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/commit/35cf39b14eae6dbd1fb364c215093095d5912ebc"><code>35cf39b</code></a> <code>Add reporter alias names to docs (#4127)</code></li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/commit/3bd2d28bfc99b5f71efc9ef332ae9ac4a5d90de8"><code>3bd2d28</code></a> <code>Forbid this.skip() within afterAll hooks (#4136)</code></li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/commit/24c22bef53e4539dd17b0d3b2123953bb8a3a883"><code>24c22be</code></a> <code>Fix hook pattern of this.skip() in beforeEach hooks (#3741)</code></li> <li><a href="https://urls.greenkeeper.io/mochajs/mocha/commit/1412dc80d87d0479f7f1d60202da2b33c90eb939"><code>1412dc8</code></a> <code>XUnit reporter should handle exceptions during diff generation (#4068)</code></li> </ul> <p>There are 61 commits in total.</p> <p>See the <a href="https://urls.greenkeeper.io/mochajs/mocha/compare/843a322f9e7724e4a75ceff1920caf24da94bdf2...d0f04e994f3e78939f0a947ef064881c7fec5188">full diff</a></p> </details> --- <details> <summary>FAQ and help</summary> There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new). </details> --- Your [Greenkeeper](https://greenkeeper.io) bot 🌴 Co-authored-by: greenkeeper[bot] <23040076+greenkeeper[bot]@users.noreply.github.com>
See mochajs/mocha#4147. Mocha logs MaxListenersExceededWarning - it's fixed but gulp-mocha doesn't point at latest mocha
Description
When using Mocha programmatically with multiple runners, a
MaxListenersExceededWarning
is emitted by Node. For every runner instance anuncaughtException
handler is registered, but never removed.This is a regression.
Description of the Change
Remove eventual
uncaughtException
handler before starting a new runner instance.Applicable issues
closes #4144