-
Notifications
You must be signed in to change notification settings - Fork 247
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
No coverage report generated for large project #434
Comments
@cklogs, Can you please try to change the configuration like the below; // Karma configuration file, see link for more information
// https://karma-runner.github.io/1.0/config/configuration-file.html
module.exports = function (config) {
config.set({
basePath: '',
frameworks: ['jasmine', '@angular-devkit/build-angular'],
plugins: [
require('karma-spec-reporter'),
require('karma-jasmine'),
require('karma-chrome-launcher'),
require('karma-coverage'),
require('@angular-devkit/build-angular/plugins/karma')
],
client: {
clearContext: false // leave Jasmine Spec Runner output visible in browser
},
+ coverageReporter: {
+ dir: require('path').join(__dirname, './coverage/karma-coverage'),
+ subdir: '.',
+ reporters: [
+ { type: 'html' },
+ { type: 'text-summary' }
+ ]
+ },
- coverage: {
- dir: require('path').join(__dirname, '../coverage/karma-coverage'),
- reports: ['html', 'lcovonly', 'text-summary']
- },
reporters: ['dots', 'spec', 'coverage'],
specReporter: {
maxLogLines: 5, // limit number of lines logged per test
suppressErrorSummary: true, // do not print error summary
suppressFailed: false, // do not print information about failed tests
suppressPassed: true, // do not print information about passed tests
suppressSkipped: true, // do not print information about skipped tests
showSpecTiming: false, // print the time elapsed for each spec
failFast: false // test would finish with error when a first fail occurs.
},
customLaunchers: {
'CustomChromeHeadless': {
base: 'ChromeHeadless',
flags: [
'--disable-gpu',
'--disable-web-security',
'--no-sandbox',
'--remote-debugging-port=9222'
],
debug: true
}
},
browsers: ['CustomChromeHeadless'],
browserDisconnectTolerance: 2,
browserNoActivityTimeout: 300000, // five minutes
browserDisconnectTimeout: 60000,
captureTimeout: 300000,
hostname: '127.0.0.1',
port: 9876,
colors: true,
logLevel: config.LOG_DEBUG,
autoWatch: false,
singleRun: true,
restartOnFileChange: false
});
}; More information about karma-coverage configuration can be found here: https://github.com/karma-runner/karma-coverage/blob/master/docs/configuration.md |
I tried exactly as is suggested above and coverage reports are still not being generated. |
Without a reproduction it's hard to tell what's happening. You can try to debug karma-coverage/lib/reporter.js Line 224 in 1d34a56
|
I'm still trying to demystify what is going on but I have observed the following: karma-coverage/lib/reporter.js Lines 185 to 201 in 1d34a56
The
This means that However, Once the tests have all ran, this function is called: karma-coverage/lib/reporter.js Lines 203 to 210 in 1d34a56
The parameter
The
Is there anything more you would like to see? |
@alan-agius4 When you have a chance, could you please review my updates? |
I'll leave the triaging to someone from the karma-coverage team. |
To the maintainers of this repo: I have a small suspicion that,
have something to do with coverage failing to be generated. But this is only a hunch. I cannot share or anonymize our code base, but if there is a large open repository that you would suggest I try and reproduce this issue from, I will happily try. Aside from that, if you have any insights on the above issue, please let me know here or contact me directly. Thanks again. |
We also have a big project with 3000+ unit tests. And I can see coverage reports generated only on powerful machines. On our ci server and on slow machines it's not generated. |
@WebMex Do you plan to continue using karma-coverage, or have you sought out a different library? We have not been able to move onto karma-coverage (from karma-coverage-instanbul-reporter) because of the above issue, but we are open to other coverage generators. |
@cklogs I have rolled back to karma-coverage-instanbul-reporter so far and waiting for the fix. Despite the warning message from angular it is still possible to use it. |
So far I have had little luck getting feedback from any of the maintainers of this library. Please advise on how to most effectively do this. Thanks in advance for your help! |
Thanks to your tip, I tested karma-coverage on a faster box (Ryzen 7 PRO / 32 GB RAM), and I am getting consistent coverage results there. Still need this fix for our deployment servers to generate coverage, but I'm hoping these multiple data points give the maintainers a lead on the issue. |
This would be a hard one to track down without a reproduction. I tried it on a seed project and generated a large number of tests but I didn't manage to replicate. Unfortunately, I am not too familiar with this plugin to get to the bottom of this without being able to reproduce the issue. |
I am seeing the same issue. If I run the test on my mac locally, I'm seeing the lcov.info file always get generated. However, running the test with even a greater When the coverage isn't generated I see something like:
When I run it locally and the file is generated I get:
Oddly, it seems the Could the problem be that the process can exit before the plugin/reporter has completed writing the file? |
@alan-agius4 |
Please can this be done? We have the same issue. We have about 13000 unit tests. Sometimes the coverage report gets generated, however it mostly fails. We run them on a Linux docker image trion/ng-cli-karma. It's upsetting to be "punished" for having too many tests. |
I have done a previous investigation on this, and I found that it was related to the speed/number of tests. It failed in Istanbul, I believe it was when merging the coverage summaries that the result was just suddenly empty and then no coverage were created |
Unfortunately this started happening ~75% of the time for us, but I could not reproduce it locally. Only solution I could find was to uninstall and go back to an unmaintained, but much more reliable solution for now. This is a blocker, we need it to be 100% reliable. |
This looks to be an issue with Karma: Unfortunately it seems that Karma is a dead project. That issue was opened in 2014 and was closed since no one worked on the issue |
It is absolutely not dead! We work with limited resources, so we cannot address every issue immediately and sadly that one got closed a long time ago; I will be adding it to my working queue. Also, your collaboration is welcome. |
I am experiencing the same issue after addressing the following message from our test run:
I am going to revert the change in my project, and follow this issue, in hopes it gets resolved soon. Some additional observations: I have seen the coverage report generated one time successfully, and if I scope the files in my test runner to a smaller subset of |
Update: Reverting back to karma-coverage-istanbul-reporter 100% fixed the issue, and our coverage reports are being reliably generated again, despite the deprecation warning. I can confirm there are issues with code coverage reports and: Angular:
karma stuffs from package.json:
I hope this helps |
I think I am seeing this problem as well. Intermittently, the coverage directory isn't created. I don't know that my project is large or not... not sure of the baseline!
An example of failure:
An example of success:
What is kind of interesting is that I get the SIGKILL in the case in which it works.... but maybe that's just karma killing the browser as it writes out the reports. I also had no problems when using Istanbul previously. Due to the warning, I'm just going to arbitrarily try setting the timeout higher in karma.conf.js and see what happens... I can't justify why it might help, but I'd like to see the warning go away anyway:
update: it didn't help. I still get intermittent failures to create the coverage output. |
I have exactly the same issue. The coverage reports are generated only when the following messasge is logged: Is there a way to force karma to always send this? Or any other updates on this issue? |
From a quick look it seems that the problem is that Unfortunately, without a reproduction it is hard to confirm or reject the theory. I wonder if somebody having the problem can run tests using this branch and see if it solves the problem? The only change there is that Karma will not call
UPD Looks like that promise is actually awaited in the |
Trying now. I'll do a few runs on this and report back to see how it does with our code. Thanks |
@devoto13, thanks for your suggestion. I removed the karma-parallel package and the result is still the same, so no need for you to look into that package. In case it helps the specs of the Microsoft hosted agents running the tests are: 2 core CPU, 7 GB of RAM, and 14 GB of SSD disk space. I think those VM should be enough to run the test properly but I don't know what else could make the test not generate coverage reports randomly. Updated logs: With test coverage generated 👍 Without test coverage 👎 |
@ozkoidi Thank you for the quick feedback. Can you please install
The first one removes the call to the The second one is based on #434 (comment). It adds logs to all |
Thank you @devoto13, I tried your branches yesterday and the result was the same (no coverage generated half the time). I include the reduced and cleaned logs below but as far as I can see the differences are:
With test coverage generated 👍
Without test coverage 👎
|
Thanks for the details @ozkoidi! I don't think Missing Can you please use the two below branches and share logs for the two cases to further investigate this problem?
If possible can you also attach unedited logs as files as timestamps may be useful in figuring out what is going on? |
Hello again @devoto13, I tested your latest branches in the pipelines and I get the same behavior. I hope you find these logs useful to find the problem, thanks for your time. |
Thank you for the help debuggin it, @ozkoidi! Are you sure you were running the code from And specific test names are irrelevant, I was primarily interested to look into the timing of the newly added logs. |
Yes, I even uninstalled and re-installed karma and karma-coverage again today to be sure. You can see it in this extract from my package-lock.json:
I run the pipeline several times and searched for the logs you added but indeed, they never show up on the output. |
Okey, thanks @ozkoidi! So it seems that the Thanks again for your help in debugging this. |
I had the very same issue and was trying for weeks now to solve it. I was able constantly solved it with adding to karma.config.js following 2 options
so the resulted file is // Karma configuration file, see link for more information
// https://karma-runner.github.io/1.0/config/configuration-file.html
const isDocker = require('is-docker');
module.exports = (config) => {
config.set({
basePath: '',
frameworks: ['jasmine', '@angular-devkit/build-angular'],
plugins: [
require('karma-jasmine'),
require('karma-chrome-launcher'),
require('karma-jasmine-html-reporter'),
require('karma-junit-reporter'),
require('karma-coverage'),
require('@angular-devkit/build-angular/plugins/karma'),
],
client: {
jasmine: {
random: false,
stopOnFailure: true,
failFast: true,
},
clearContext: false, // leave Jasmine Spec Runner output visible in browser
},
junitReporter: {
outputDir: './reports',
outputFile: 'karma.xml',
useBrowserName: false,
},
coverageReporter: {
dir: './reports/coverage',
subdir: '.',
includeAllSources: true,
reporters: [
{ type: 'cobertura' },
{ type: 'lcovonly' },
{ type: 'html' },
{ type: 'text' },
],
check: {
// thresholds for all files
global: {
statements: 76.25,
branches: 55.95,
functions: 71.4,
lines: 75.8,
}
},
},
reporters: ['progress', 'kjhtml', 'junit', 'coverage'],
port: 9876,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
// to avoid DISCONNECTED messages
browserDisconnectTimeout: 400000, // default 2000
browserDisconnectTolerance: 6, // default 0
browserNoActivityTimeout: 8 * 60 * 40000, //default 10000
captureTimeout: 8 * 60 * 40000, //default 60000
browserSocketTimeout: 8 * 60 * 40000,
pingTimeout: 8 * 60 * 40000,
browsers: ['ChromeCustom'],
singleRun: false,
customLaunchers: {
ChromeCustom: {
base: 'ChromeHeadless',
flags: isDocker() ? ['--disable-gpu', '--no-sandbox'] : [],
},
},
});
}; |
Thank you so much @danbilokha! After adding I already had big values for Even though is not an actual fix, it does unblock our pipelines, so thanks again for your suggestion :) |
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [karma](https://karma-runner.github.io/) ([source](https://github.com/karma-runner/karma)) | devDependencies | minor | [`6.3.20` -> `6.4.0`](https://renovatebot.com/diffs/npm/karma/6.3.20/6.4.0) | --- ### Release Notes <details> <summary>karma-runner/karma</summary> ### [`v6.4.0`](https://github.com/karma-runner/karma/blob/HEAD/CHANGELOG.md#​640-httpsgithubcomkarma-runnerkarmacomparev6320v640-2022-06-14) [Compare Source](karma-runner/karma@v6.3.20...v6.4.0) ##### Features - support SRI verification of link tags ([dc51a2e](karma-runner/karma@dc51a2e)) - support SRI verification of script tags ([6a54b1c](karma-runner/karma@6a54b1c)) #### [6.3.20](karma-runner/karma@v6.3.19...v6.3.20) (2022-05-13) ##### Bug Fixes - prefer IPv4 addresses when resolving domains ([e17698f](karma-runner/karma@e17698f)), closes [#​3730](karma-runner/karma#3730) #### [6.3.19](karma-runner/karma@v6.3.18...v6.3.19) (2022-04-19) ##### Bug Fixes - **client:** error out when opening a new tab fails ([099b85e](karma-runner/karma@099b85e)) #### [6.3.18](karma-runner/karma@v6.3.17...v6.3.18) (2022-04-13) ##### Bug Fixes - **deps:** upgrade socket.io to v4.4.1 ([52a30bb](karma-runner/karma@52a30bb)) #### [6.3.17](karma-runner/karma@v6.3.16...v6.3.17) (2022-02-28) ##### Bug Fixes - **deps:** update colors to maintained version ([#​3763](karma-runner/karma#3763)) ([fca1884](karma-runner/karma@fca1884)) #### [6.3.16](karma-runner/karma@v6.3.15...v6.3.16) (2022-02-10) ##### Bug Fixes - **security:** mitigate the "Open Redirect Vulnerability" ([ff7edbb](karma-runner/karma@ff7edbb)) #### [6.3.15](karma-runner/karma@v6.3.14...v6.3.15) (2022-02-05) ##### Bug Fixes - **helper:** make mkdirIfNotExists helper resilient to concurrent calls ([d9dade2](karma-runner/karma@d9dade2)), closes [/github.com/karma-runner/karma-coverage/issues/434#issuecomment-1017939333](https://github.com//github.com/karma-runner/karma-coverage/issues/434/issues/issuecomment-1017939333) #### [6.3.14](karma-runner/karma@v6.3.13...v6.3.14) (2022-02-05) ##### Bug Fixes - remove string template from client code ([91d5acd](karma-runner/karma@91d5acd)) - warn when `singleRun` and `autoWatch` are `false` ([69cfc76](karma-runner/karma@69cfc76)) - **security:** remove XSS vulnerability in `returnUrl` query param ([839578c](karma-runner/karma@839578c)) #### [6.3.13](karma-runner/karma@v6.3.12...v6.3.13) (2022-01-31) ##### Bug Fixes - **deps:** bump log4js to resolve security issue ([5bf2df3](karma-runner/karma@5bf2df3)), closes [#​3751](karma-runner/karma#3751) #### [6.3.12](karma-runner/karma@v6.3.11...v6.3.12) (2022-01-24) ##### Bug Fixes - remove depreciation warning from log4js ([41bed33](karma-runner/karma@41bed33)) #### [6.3.11](karma-runner/karma@v6.3.10...v6.3.11) (2022-01-13) ##### Bug Fixes - **deps:** pin colors package to 1.4.0 due to security vulnerability ([a5219c5](karma-runner/karma@a5219c5)) #### [6.3.10](karma-runner/karma@v6.3.9...v6.3.10) (2022-01-08) ##### Bug Fixes - **logger:** create parent folders if they are missing ([0d24bd9](karma-runner/karma@0d24bd9)), closes [#​3734](karma-runner/karma#3734) #### [6.3.9](karma-runner/karma@v6.3.8...v6.3.9) (2021-11-16) ##### Bug Fixes - restartOnFileChange option not restarting the test run ([92ffe60](karma-runner/karma@92ffe60)), closes [#​27](karma-runner/karma#27) [#​3724](karma-runner/karma#3724) #### [6.3.8](karma-runner/karma@v6.3.7...v6.3.8) (2021-11-07) ##### Bug Fixes - **reporter:** warning if stack trace contains generated code invocation ([4f23b14](karma-runner/karma@4f23b14)) #### [6.3.7](karma-runner/karma@v6.3.6...v6.3.7) (2021-11-01) ##### Bug Fixes - **middleware:** replace %X_UA_COMPATIBLE% marker anywhere in the file ([f1aeaec](karma-runner/karma@f1aeaec)), closes [#​3711](karma-runner/karma#3711) #### [6.3.6](karma-runner/karma@v6.3.5...v6.3.6) (2021-10-25) ##### Bug Fixes - bump vulnerable ua-parser-js version ([6f2b2ec](karma-runner/karma@6f2b2ec)), closes [#​3713](karma-runner/karma#3713) #### [6.3.5](karma-runner/karma@v6.3.4...v6.3.5) (2021-10-20) ##### Bug Fixes - **client:** prevent socket.io from hanging due to mocked clocks ([#​3695](karma-runner/karma#3695)) ([105da90](karma-runner/karma@105da90)) #### [6.3.4](karma-runner/karma@v6.3.3...v6.3.4) (2021-06-14) ##### Bug Fixes - bump production dependencies within SemVer ranges ([#​3682](karma-runner/karma#3682)) ([36467a8](karma-runner/karma@36467a8)), closes [#​3680](karma-runner/karma#3680) #### [6.3.3](karma-runner/karma@v6.3.2...v6.3.3) (2021-06-01) ##### Bug Fixes - **server:** clean up vestigial code from proxy ([#​3640](karma-runner/karma#3640)) ([f4aeac3](karma-runner/karma@f4aeac3)), closes [/tools.ietf.org/html/std66#section-3](https://github.com//tools.ietf.org/html/std66/issues/section-3) #### [6.3.2](karma-runner/karma@v6.3.1...v6.3.2) (2021-03-29) ##### Bug Fixes - fix running tests in IE9 ([#​3668](karma-runner/karma#3668)) ([0055bc5](karma-runner/karma@0055bc5)), closes [/github.com/karma-runner/karma/blob/026fff870913fb6cd2858dd962935dc74c92b725/client/main.js#L14](https://github.com//github.com/karma-runner/karma/blob/026fff870913fb6cd2858dd962935dc74c92b725/client/main.js/issues/L14) [#​3665](karma-runner/karma#3665) #### [6.3.1](karma-runner/karma@v6.3.0...v6.3.1) (2021-03-24) ##### Bug Fixes - **client:** clearContext after complete sent ([#​3657](karma-runner/karma#3657)) ([c0962e3](karma-runner/karma@c0962e3)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). Co-authored-by: cabr2-bot <cabr2.help@gmail.com> Reviewed-on: https://codeberg.org/Calciumdibromid/CaBr2/pulls/1412 Reviewed-by: Epsilon_02 <epsilon_02@noreply.codeberg.org> Co-authored-by: Calciumdibromid Bot <cabr2_bot@noreply.codeberg.org> Co-committed-by: Calciumdibromid Bot <cabr2_bot@noreply.codeberg.org>
The main motivation for this change is karma-runner/karma-coverage#434 (comment) where concurrent calls to the helper fail because of the race between the check and directory creation. This is a temporary solution and should be replaced with the native [`mkdir`](https://nodejs.org/api/fs.html#fsmkdirpath-options-callback) with the `recursive` option once minimum supported Node is bumped to 12.
## [6.3.15](karma-runner/karma@v6.3.14...v6.3.15) (2022-02-05) ### Bug Fixes * **helper:** make mkdirIfNotExists helper resilient to concurrent calls ([d9dade2](karma-runner@d9dade2)), closes [/github.com/karma-runner/karma-coverage/issues/434#issuecomment-1017939333](https://github.com//github.com/karma-runner/karma-coverage/issues/434/issues/issuecomment-1017939333)
had same issue while running unit tests through linux docker container with low cpu specs. using browserSocketTimeout and pingTimeout worked!!! for anyone searching like me below are our app configs. |
# 1.0.0-alpha.1 (2023-09-19) ### Bug Fixes * a missed argument in a debug message ([#3009](https://github.com/Second-Live/karma-up/issues/3009)) ([af8c6e4](https://github.com/Second-Live/karma-up/commit/af8c6e407fa88de1b8ee034cf41a4c83ad832877)) * **adapter.requirejs:** do not configure baseUrl automatically ([63f3f40](https://github.com/Second-Live/karma-up/commit/63f3f409ae85a5137396a7ed6537bedfe4437cb3)), closes [#291](https://github.com/Second-Live/karma-up/issues/291) [#292](https://github.com/Second-Live/karma-up/issues/292) [#291](https://github.com/Second-Live/karma-up/issues/291) * **adapter.requirejs:** show error if no timestamp defined for a file ([59dbdbd](https://github.com/Second-Live/karma-up/commit/59dbdbd136baa87467b9b9a4cb6ce226ae87bbef)) * Add crossorigin attribute to script HTML tags ([5690ffe](https://github.com/Second-Live/karma-up/commit/5690ffe82bb7ff195576f6f43dd8c281e51aa833)) * add emscripten memory image as binary suffix ([f6b2b56](https://github.com/Second-Live/karma-up/commit/f6b2b561c5d5e083cd204df9564024cac163b611)) * add missing dep flatted ([#3223](https://github.com/Second-Live/karma-up/issues/3223)) ([655d4d2](https://github.com/Second-Live/karma-up/commit/655d4d27e93a2011a00ea6ef3caf12a583ed4589)) * avoid ES6+ syntax in client scripts ([#3629](https://github.com/Second-Live/karma-up/issues/3629)) ([6629e96](https://github.com/Second-Live/karma-up/commit/6629e96901dbeae24fbaa4d0bfa009618fb8ee75)), closes [#3630](https://github.com/Second-Live/karma-up/issues/3630) * **BaseReporter:** log message correctly with just one browser ([#3045](https://github.com/Second-Live/karma-up/issues/3045)) ([c1eb236](https://github.com/Second-Live/karma-up/commit/c1eb236523f8dab7e5f7dc70f4ee016b8061f0ba)) * better error reporting when loading plugins ([d9078a8](https://github.com/Second-Live/karma-up/commit/d9078a8eca41df15f26b53e2375f722a48d0992d)) * better serialization in dump/console.log ([fd46365](https://github.com/Second-Live/karma-up/commit/fd46365d1fd3a9bea15c04abeb7df33a3a2d96a4)), closes [#640](https://github.com/Second-Live/karma-up/issues/640) * **browser:** allow updating total specs count ([#3264](https://github.com/Second-Live/karma-up/issues/3264)) ([d5df723](https://github.com/Second-Live/karma-up/commit/d5df723f97d1b48133416109276feebb0c6fa82d)) * **browser:** don't add already active socket again on reconnect ([37a7958](https://github.com/Second-Live/karma-up/commit/37a7958ae5517b8bf16e36cc90fe0b1cf0c09afd)) * **browser:** emit 'browsers_change' in collection ([#3183](https://github.com/Second-Live/karma-up/issues/3183)) ([7634e71](https://github.com/Second-Live/karma-up/commit/7634e7145b4220123f317d652b3dd13bd12c32ec)) * **browser:** ensure browser state is EXECUTING when tests start ([#3074](https://github.com/Second-Live/karma-up/issues/3074)) ([dc7265b](https://github.com/Second-Live/karma-up/commit/dc7265bbb5e92b3b9fd48ce85dbdc0d776772cf5)), closes [#1640](https://github.com/Second-Live/karma-up/issues/1640) * **browser:** filter browser logging by level ([35965d9](https://github.com/Second-Live/karma-up/commit/35965d9e996d462e471044b338ac038d2787c26d)), closes [#2228](https://github.com/Second-Live/karma-up/issues/2228) * **browser:** make sure that empty results array is still recognized ([#3486](https://github.com/Second-Live/karma-up/issues/3486)) ([fa95fa3](https://github.com/Second-Live/karma-up/commit/fa95fa3c917470fa4b9ad736287379d1e9ebb350)) * **browser:** nicer "disconnect" - no more "Disconnectedundefined" ([a987d63](https://github.com/Second-Live/karma-up/commit/a987d6366f9bfc9514c73f85a94c2c31a0019924)) * **browser:** reply "start" event ([4fde43d](https://github.com/Second-Live/karma-up/commit/4fde43deee22b53fcca52132c51c27f4012d2933)) * **browser:** report errors to console during singleRun=false ([#3209](https://github.com/Second-Live/karma-up/issues/3209)) ([30ff73b](https://github.com/Second-Live/karma-up/commit/30ff73b35816dad727dd04487f809497f952add5)), closes [#3131](https://github.com/Second-Live/karma-up/issues/3131) * browsers_change event always has collection as arg ([42bf787](https://github.com/Second-Live/karma-up/commit/42bf787f87304e6be23dd3dac893b3c3f77d6764)) * **build:** pin npm version in appveyor to v3, compat with node 4 ([#2983](https://github.com/Second-Live/karma-up/issues/2983)) ([bc1453e](https://github.com/Second-Live/karma-up/commit/bc1453e3198faa53dd6b02a23b1d3b3911d6b467)) * **build:** switch from yarn to package-lock.json ([#3351](https://github.com/Second-Live/karma-up/issues/3351)) ([6c5add2](https://github.com/Second-Live/karma-up/commit/6c5add2449a5a0ef33e1907f6711309a13e429d1)) * bump production dependencies within SemVer ranges ([#3682](https://github.com/Second-Live/karma-up/issues/3682)) ([36467a8](https://github.com/Second-Live/karma-up/commit/36467a8ac357108343dde4131ef34099004711e5)), closes [#3680](https://github.com/Second-Live/karma-up/issues/3680) * bump vulnerable ua-parser-js version ([6f2b2ec](https://github.com/Second-Live/karma-up/commit/6f2b2ec6ed0218980eabf2cbf44e0c8f16fee661)), closes [#3713](https://github.com/Second-Live/karma-up/issues/3713) * call .resume to prevent browser output streams filling up ([107cd02](https://github.com/Second-Live/karma-up/commit/107cd02f5f9e42010628facdd12636f65774ecf7)) * capturing console.log on IE ([fa4b686](https://github.com/Second-Live/karma-up/commit/fa4b686a81ad826f256a4ca63c772af7ad6e411e)), closes [#329](https://github.com/Second-Live/karma-up/issues/329) * catch exceptions from SourceMapConsumer ([5d42e64](https://github.com/Second-Live/karma-up/commit/5d42e64373345f1beed95218983861f77352c16c)) * Change timing on test ([0cb6204](https://github.com/Second-Live/karma-up/commit/0cb6204f157c4ec1078aeb622ea33bbde930da4a)) * **changelog:** remove release which does not exist ([#3214](https://github.com/Second-Live/karma-up/issues/3214)) ([4e87902](https://github.com/Second-Live/karma-up/commit/4e8790212d3ea712be3184349ff5041d20473baa)) * **ci:** abandon browserstack tests for Safari and IE ([#3615](https://github.com/Second-Live/karma-up/issues/3615)) ([04a811d](https://github.com/Second-Live/karma-up/commit/04a811dc7a4b37aa56c0405880f03cb2493bf820)) * **ci:** echo travis env that gates release after_success ([#3446](https://github.com/Second-Live/karma-up/issues/3446)) ([b8b2ed8](https://github.com/Second-Live/karma-up/commit/b8b2ed81e595baf0337c9628a736494b9f2c91c1)) * **ci:** poll every 10s to avoid rate limit. ([#3388](https://github.com/Second-Live/karma-up/issues/3388)) ([91e7e00](https://github.com/Second-Live/karma-up/commit/91e7e00b29db95ea7209f60c07431b10ab597b02)) * **ci:** Repaired AppVeyor for Node.js@0.12 ([cbfd98c](https://github.com/Second-Live/karma-up/commit/cbfd98ccb4e48de51b604e8148f3279a25a6edc6)) * **ci:** stop the proxy before killing the child, handle errors ([#3472](https://github.com/Second-Live/karma-up/issues/3472)) ([abe9af6](https://github.com/Second-Live/karma-up/commit/abe9af616f7a08f3c64cc06f6a68bd5f9c941133)), closes [#3464](https://github.com/Second-Live/karma-up/issues/3464) * **cli:** Always pass an instance of fs to processArgs. ([06532b7](https://github.com/Second-Live/karma-up/commit/06532b7042371f270c227a1a7f859f2dab5afac1)), closes [#677](https://github.com/Second-Live/karma-up/issues/677) * **client.html:** always open debug.html in a new browser process ([d176bcf](https://github.com/Second-Live/karma-up/commit/d176bcf47e9b3a7df8c6ae691f767f1012214c53)) * **client:** add ES5 shim ([14c30b7](https://github.com/Second-Live/karma-up/commit/14c30b734fc14057b51f17c543431711c6ad57e9)), closes [#1529](https://github.com/Second-Live/karma-up/issues/1529) * **client:** add proxy support to stringify ([be10116](https://github.com/Second-Live/karma-up/commit/be10116dde92f3c5f87a09cec93f19665b95c129)) * **client:** avoid race between execute and clearContext ([#3452](https://github.com/Second-Live/karma-up/issues/3452)) ([8bc5b46](https://github.com/Second-Live/karma-up/commit/8bc5b468393bb90c0cac8f400d61e3434596c05a)), closes [#3424](https://github.com/Second-Live/karma-up/issues/3424) * **client:** check in bundled client code into version control ([#3524](https://github.com/Second-Live/karma-up/issues/3524)) ([6cd5a3b](https://github.com/Second-Live/karma-up/commit/6cd5a3b091490ad1c621710456f359213f0c161e)), closes [/github.com/karma-runner/karma/commit/f5521df7df5cd1201b5dce28dc4e326b1ffc41fd#commitcomment-38967493](https://github.com//github.com/karma-runner/karma/commit/f5521df7df5cd1201b5dce28dc4e326b1ffc41fd/issues/commitcomment-38967493) * **client:** clearContext after complete sent ([#3657](https://github.com/Second-Live/karma-up/issues/3657)) ([c0962e3](https://github.com/Second-Live/karma-up/commit/c0962e34fb2c0a7a43bead8d600ad4a6dbb29c3d)) * **client:** do not reset karmaNavigating in unload handler ([#3591](https://github.com/Second-Live/karma-up/issues/3591)) ([4a8178f](https://github.com/Second-Live/karma-up/commit/4a8178f3a0504ef007b23ef0fd8f5ca128f0c5c6)), closes [#3482](https://github.com/Second-Live/karma-up/issues/3482) * **client:** does not throws an error for non DOM object that has `tagName` property ([ba55afb](https://github.com/Second-Live/karma-up/commit/ba55afb30e402e0e930f8c0d025fa6bec1d052e1)), closes [#2139](https://github.com/Second-Live/karma-up/issues/2139) * **client:** don't crash if receive array-like results ([e095411](https://github.com/Second-Live/karma-up/commit/e095411f3f7684b2ad96f31abb5eba3cd7fd54da)), closes [#2061](https://github.com/Second-Live/karma-up/issues/2061) * **client:** dynamic protocol for socket.io ([c986eef](https://github.com/Second-Live/karma-up/commit/c986eefeba01ef46a8bb7595a8285ff24986126c)), closes [#1400](https://github.com/Second-Live/karma-up/issues/1400) * **client:** Enable loading different file types when running in parent mode without iframe ([#3289](https://github.com/Second-Live/karma-up/issues/3289)) ([7968db6](https://github.com/Second-Live/karma-up/commit/7968db63eb9899961dec19655904502334043735)) * **client:** error out when opening a new tab fails ([099b85e](https://github.com/Second-Live/karma-up/commit/099b85ed0a46e37dd7cb14fc1596cbb1b3eabce9)) * **client:** fix a false positive page reload error in Safari ([#3643](https://github.com/Second-Live/karma-up/issues/3643)) ([2a57b23](https://github.com/Second-Live/karma-up/commit/2a57b230cd6b27e1a6e903ca6557c5a6b3e31bf6)) * **client:** fix issue with loaded on safari 10 ([#3252](https://github.com/Second-Live/karma-up/issues/3252)) ([571191c](https://github.com/Second-Live/karma-up/commit/571191cfbe41010c6fa4283bd7d8447d5fcbb4ba)), closes [#3198](https://github.com/Second-Live/karma-up/issues/3198) * **client:** Fix stringify serializing objects ([0d0972a](https://github.com/Second-Live/karma-up/commit/0d0972a59e6e0354033c9fdfec72d5ddfbfe8e1e)) * **client:** flush resultsBuffer on engine upgrade ([#3212](https://github.com/Second-Live/karma-up/issues/3212)) ([e44ca94](https://github.com/Second-Live/karma-up/commit/e44ca944fe94ae455cd6dc45d9985a6d9fb94754)), closes [#3211](https://github.com/Second-Live/karma-up/issues/3211) * **client:** Only create the funky object if message is not a string ([#3298](https://github.com/Second-Live/karma-up/issues/3298)) ([ce6825f](https://github.com/Second-Live/karma-up/commit/ce6825f4c88c2737fd6bd943e006c6ab5a0fe485)), closes [#3296](https://github.com/Second-Live/karma-up/issues/3296) * **client:** prevent socket.io from hanging due to mocked clocks ([#3695](https://github.com/Second-Live/karma-up/issues/3695)) ([105da90](https://github.com/Second-Live/karma-up/commit/105da90a9975c1050f96cda966bd30a3c677494e)) * **client:** redirect to redirect_url after all messages are sent ([4d05602](https://github.com/Second-Live/karma-up/commit/4d05602c803a6645d6c0e9404a60ed380f0329ee)) * **client:** Revert back to old reloading detection ([f1c22d6](https://github.com/Second-Live/karma-up/commit/f1c22d66de8fe4109f903e8e3cfe4190baa36877)), closes [#1656](https://github.com/Second-Live/karma-up/issues/1656) * **client:** serialise DOM objects ([1f73be4](https://github.com/Second-Live/karma-up/commit/1f73be4f94415947b286dadd068920bd8fa2b142)), closes [#1106](https://github.com/Second-Live/karma-up/issues/1106) * **client:** show error if an adapter is removed ([a8b250c](https://github.com/Second-Live/karma-up/commit/a8b250cf6a89cf064f67ecb1e2c040cc224d91e9)) * **client:** Update location detection for socket.io ([7a23fa5](https://github.com/Second-Live/karma-up/commit/7a23fa571854fa6c1e7e7dc7fdfddeafa9759d58)) * **client:** Use supported shim path. ([184f12e](https://github.com/Second-Live/karma-up/commit/184f12e415fa970b3d14b70a41e2336d1fa73eb4)) * **client:** Wait for childwindow to load ([c1bb15a](https://github.com/Second-Live/karma-up/commit/c1bb15a2a48586165af4e08b737d0bfb9252dcdd)) * **client:** Wait for iframe to be loaded ([1631474](https://github.com/Second-Live/karma-up/commit/1631474e7484a89523eabdbc5eb98e431c286c2e)), closes [#1652](https://github.com/Second-Live/karma-up/issues/1652) * **cli:** override if an arg is defined multiple times ([31eb2c2](https://github.com/Second-Live/karma-up/commit/31eb2c2c3ca1663eff94f0398768a9b582332a93)), closes [#1192](https://github.com/Second-Live/karma-up/issues/1192) * **cli:** print UserAgent string verbatim if from an unknown browser ([9d97226](https://github.com/Second-Live/karma-up/commit/9d972263dd80920813500dd04c53b754cda81696)) * **cli:** restore command line help contents ([#3502](https://github.com/Second-Live/karma-up/issues/3502)) ([e99da31](https://github.com/Second-Live/karma-up/commit/e99da316a2d3f875f45baf4e985e521a2fcc755f)), closes [#3474](https://github.com/Second-Live/karma-up/issues/3474) * **cli:** restore shell completion in the npm package ([f56b5a5](https://github.com/Second-Live/karma-up/commit/f56b5a507623d98c299aafe3cc1fc0fb9c431010)), closes [#2351](https://github.com/Second-Live/karma-up/issues/2351) * **cli:** temporarily disable strict parameters validation ([#3641](https://github.com/Second-Live/karma-up/issues/3641)) ([9c755e0](https://github.com/Second-Live/karma-up/commit/9c755e0d61f1e8fb0fed1281fc8a331d5f1734be)), closes [#3625](https://github.com/Second-Live/karma-up/issues/3625) * **cli:** Use `bin` field in package.json ([6823926](https://github.com/Second-Live/karma-up/commit/6823926f0588f4a219705eb648fbb36a933a32d5)), closes [#1351](https://github.com/Second-Live/karma-up/issues/1351) * **commitlint:** skip task on master ([#3650](https://github.com/Second-Live/karma-up/issues/3650)) ([3fc6fda](https://github.com/Second-Live/karma-up/commit/3fc6fdadd6b0ed6838de048c15485b1bd815fe23)) * **common:** fix AppVeyor build ([6c5e7d0](https://github.com/Second-Live/karma-up/commit/6c5e7d00758f964a13473c44cd8370a07a6ad07d)) * **common:** more detailed info about error ([424aacc](https://github.com/Second-Live/karma-up/commit/424aacc4669697bd8032276cdac2339ccad1181b)) * **common:** Proxy function toString does not contain Proxy. ([4fb3484](https://github.com/Second-Live/karma-up/commit/4fb3484285d174ac23a1da4432af4de5a87928ba)) * **common:** stringify error on 'Cannot convert a Symbol value to a string' ([#2990](https://github.com/Second-Live/karma-up/issues/2990)) ([65b658a](https://github.com/Second-Live/karma-up/commit/65b658a8ba33831c1cf22e56bf484f42da232617)), closes [#2856](https://github.com/Second-Live/karma-up/issues/2856) * **completion:** add missin --log-level for karma init ([1e79eb5](https://github.com/Second-Live/karma-up/commit/1e79eb553e40530adef36b30b35a79f7a8026ddf)) * **config:** [#1113](https://github.com/Second-Live/karma-up/issues/1113) Watching is not working properly on linux ([c91ffbc](https://github.com/Second-Live/karma-up/commit/c91ffbc05f78f2c17dcc43039300cdf045e64ccc)) * **config:** add crossOriginAttribute config option ([1e465b1](https://github.com/Second-Live/karma-up/commit/1e465b1f473212c208a34b81ad56e1b454deb7f7)) * **config:** add test:unit npm script ([#3242](https://github.com/Second-Live/karma-up/issues/3242)) ([02f071d](https://github.com/Second-Live/karma-up/commit/02f071d5c9f55e853a5178f02b8dc58f0c3a103c)) * **config:** allow CoffeeScript 1.7 to be used ([a1583de](https://github.com/Second-Live/karma-up/commit/a1583decd97438a241f99287159da2948eb3a95f)) * **config:** allow parsing the config multiple times ([78a7094](https://github.com/Second-Live/karma-up/commit/78a7094e0f262c431e904f99cf356be53eee3510)) * **config:** apply CLI logger options as soon as we can ([16179b0](https://github.com/Second-Live/karma-up/commit/16179b08021334cfab02a9dcba8d7f4bd219bc5e)) * **config:** better errors if file invalid or does not exist ([74b533b](https://github.com/Second-Live/karma-up/commit/74b533beb34c115f5080d412a03573d269d540aa)) * **config:** Call debug log methods after setting the loglevel based upon config/cli-options. ([99fd3f0](https://github.com/Second-Live/karma-up/commit/99fd3f03a67d5141ceb3d44d1bf0bf6717a0255a)) * **config:** Call debug log methods after setting the loglevel based upon config/cli-options. ([a340dae](https://github.com/Second-Live/karma-up/commit/a340dae52cd1955ff6d6a6a3dd6799cb23bd8e32)) * **config:** check extension before ts-node register ([#3651](https://github.com/Second-Live/karma-up/issues/3651)) ([474f4e1](https://github.com/Second-Live/karma-up/commit/474f4e1caff469cce87f19a11d9179e4e05552f9)), closes [#3329](https://github.com/Second-Live/karma-up/issues/3329) * **config:** Check if configFilePath is a string. ([98724b6](https://github.com/Second-Live/karma-up/commit/98724b6ef5a6ba60d487e7b774056832c6ca9d8c)), closes [#447](https://github.com/Second-Live/karma-up/issues/447) * **config:** corrects spelling in example config template ([9fafc60](https://github.com/Second-Live/karma-up/commit/9fafc60f24d61f3072de35c89ec566db5ca21bff)) * **config:** Default remaining client options if any are set ([632dd5e](https://github.com/Second-Live/karma-up/commit/632dd5e329191bff0bc85d9bcf58657143315adc)), closes [#961](https://github.com/Second-Live/karma-up/issues/961) * **config:** do not change urlRoot even if proxied ([8c138b5](https://github.com/Second-Live/karma-up/commit/8c138b504046a3aeb230b71e1049aa60ee46905d)) * **config:** ensure basePath is always resolved ([2e5c5aa](https://github.com/Second-Live/karma-up/commit/2e5c5aaaddc4ad4e1ee9c8fa0388d3916827f403)) * **config:** Error when browers option isn't array ([b695460](https://github.com/Second-Live/karma-up/commit/b6954608a97c349c99205f25f9f677447a9a0b7a)) * **config:** fail if client.args is set to a non array ([fe4eaec](https://github.com/Second-Live/karma-up/commit/fe4eaec09f1b7d34270dec7f948cd9441ef6fe48)) * **config:** fix the warning when using old syntax ([5e55d79](https://github.com/Second-Live/karma-up/commit/5e55d797f7544a45c3042e301bbf71e8b830daf3)) * **config:** frameworks spelling ([9259740](https://github.com/Second-Live/karma-up/commit/9259740a81ef39a64656af800cee24091ce2d97e)) * **config:** ignore empty string patterns ([66c86a6](https://github.com/Second-Live/karma-up/commit/66c86a6689aaac82006fa47762bd86496ad76bf7)) * **config:** Log the final config just before use. ([#3041](https://github.com/Second-Live/karma-up/issues/3041)) ([05dd09a](https://github.com/Second-Live/karma-up/commit/05dd09a73232c31545d713b90dcaad260da00ff8)) * **config:** make the config changes backwards compatible ([593ad85](https://github.com/Second-Live/karma-up/commit/593ad853c330a7856f2112db2bfb288f67948fa6)) * **config:** move puppeteer from dependency to dev-dependency ([#3193](https://github.com/Second-Live/karma-up/issues/3193)) ([f0d52ad](https://github.com/Second-Live/karma-up/commit/f0d52ad6427c467b9482e3a80889bb3feccf053c)), closes [#3191](https://github.com/Second-Live/karma-up/issues/3191) * **config:** not append empty module if no custom launcher/rep/prep ([ee15a4e](https://github.com/Second-Live/karma-up/commit/ee15a4e446e9f35949a2fdde7cbdbecdd7ca0750)) * **config:** remove phantomjs in favor of chrome headless ([#3175](https://github.com/Second-Live/karma-up/issues/3175)) ([0f8b2b1](https://github.com/Second-Live/karma-up/commit/0f8b2b17e8fb4aab101ed9acfc65a3090b3298ca)) * **config:** Retry install with appveyor-retry. ([17d5791](https://github.com/Second-Live/karma-up/commit/17d57914b7b8d91ef3f8b3eb3f9a646a9e67fdd6)) * **config:** Separate ENOENT error handler from others ([e49dabe](https://github.com/Second-Live/karma-up/commit/e49dabe783d6cfb2ee97b70ac01953e82f70f831)) * **config:** Simpilfy error proceesing. ([#3345](https://github.com/Second-Live/karma-up/issues/3345)) ([582a406](https://github.com/Second-Live/karma-up/commit/582a406aa124a39ed57fc54673b73ca9cf808ae7)), closes [#3339](https://github.com/Second-Live/karma-up/issues/3339) * **config:** use polling by default ([53978c4](https://github.com/Second-Live/karma-up/commit/53978c42f10088fb29d09597817c5dde58aeb32b)) * **config:** wait 20s for browser activity. ([#3087](https://github.com/Second-Live/karma-up/issues/3087)) ([88b977f](https://github.com/Second-Live/karma-up/commit/88b977fcada5d08ae8d5bba9bc8eefc8404eff82)) * **config:** Wait 30s for browser activity per Travis. ([#3091](https://github.com/Second-Live/karma-up/issues/3091)) ([f6d2f0e](https://github.com/Second-Live/karma-up/commit/f6d2f0ea5a3323c5e359e26fe5be9fbf68db819f)) * **config:** Workaround npm 5.4 windows bug ([ec47d81](https://github.com/Second-Live/karma-up/commit/ec47d8115e48680cc8b9cf253bd92dbb4106e162)) * **context:** do not error when karma is navigating ([#3565](https://github.com/Second-Live/karma-up/issues/3565)) ([05dc288](https://github.com/Second-Live/karma-up/commit/05dc28801627e3ce7054ae548046714dc2cf7a5e)), closes [#3560](https://github.com/Second-Live/karma-up/issues/3560) * **context:** Updated postMessage listener to stop validating non-Karma messages ([306e565](https://github.com/Second-Live/karma-up/commit/306e5651c9ffdcc1a187b2d4c50cac654375f4db)) * **coverage:** always send a result object ([62c3c67](https://github.com/Second-Live/karma-up/commit/62c3c6790659f8f82f8a2ca5646aa424eeb28842)), closes [#365](https://github.com/Second-Live/karma-up/issues/365) * **cve:** update ua-parser-js to 0.7.23 to fix CVE-2020-7793 ([#3584](https://github.com/Second-Live/karma-up/issues/3584)) ([f819fa8](https://github.com/Second-Live/karma-up/commit/f819fa843fa0633edbe2af6ac2889e25ea2cb639)) * **cve:** update yargs to 16.1.1 to fix cve-2020-7774 in y18n ([#3578](https://github.com/Second-Live/karma-up/issues/3578)) ([3fed0bc](https://github.com/Second-Live/karma-up/commit/3fed0bc7dd042a09c8aec55c059654781a4584ec)), closes [#3577](https://github.com/Second-Live/karma-up/issues/3577) * **debug-runner:** support asynchronous tests in the debug runner ([a36f3eb](https://github.com/Second-Live/karma-up/commit/a36f3eb47408316686d1eeae4c54b6ca8edc54bd)), closes [#2811](https://github.com/Second-Live/karma-up/issues/2811) * **debug.html:** Added whitespace after 'SKIPPED' ([218ee85](https://github.com/Second-Live/karma-up/commit/218ee859d8c8f1c7d2f47435548030f367f1e05d)) * **dep:** Bump useragent to fix HeadlessChrome version ([#3201](https://github.com/Second-Live/karma-up/issues/3201)) ([240209f](https://github.com/Second-Live/karma-up/commit/240209f738df69a9e382e04d8c59f020b34c3267)), closes [#2762](https://github.com/Second-Live/karma-up/issues/2762) * **dependencies:** update and unlock socket.io dependency ([#3513](https://github.com/Second-Live/karma-up/issues/3513)) ([b60391f](https://github.com/Second-Live/karma-up/commit/b60391fbddcfa5f8c50b6ac6e3c8d8d845258a56)) * **dependencies:** update dependencies ([#3543](https://github.com/Second-Live/karma-up/issues/3543)) ([5db46b7](https://github.com/Second-Live/karma-up/commit/5db46b799b84a3d29157edfdbb8d0d0bc57f8fbc)) * **dependencies:** update production dependencies ([#3512](https://github.com/Second-Live/karma-up/issues/3512)) ([0cd696f](https://github.com/Second-Live/karma-up/commit/0cd696fe91f2616f6646ea5c67cc44b49d7e941a)) * **dependencies:** update to latest log4js major ([#3514](https://github.com/Second-Live/karma-up/issues/3514)) ([47f1cb2](https://github.com/Second-Live/karma-up/commit/47f1cb222ee0921defbe313b694da3288a894fec)) * **dependencies:** update to safe version of http-proxy ([#3519](https://github.com/Second-Live/karma-up/issues/3519)) ([00347bb](https://github.com/Second-Live/karma-up/commit/00347bb204c8c87e1096679af4634032d6600b67)), closes [#3510](https://github.com/Second-Live/karma-up/issues/3510) * **deps:** back to karma-browserstack-launcher 1.4 ([#3361](https://github.com/Second-Live/karma-up/issues/3361)) ([1cd87ad](https://github.com/Second-Live/karma-up/commit/1cd87ad04e11d6a79ba6f0a0bba42371be8e55bd)) * **deps:** bump log4js to resolve security issue ([5bf2df3](https://github.com/Second-Live/karma-up/commit/5bf2df304453c8f71ebc725653fd174ddb1dd28b)), closes [#3751](https://github.com/Second-Live/karma-up/issues/3751) * **deps:** bump socket-io to v3 ([#3586](https://github.com/Second-Live/karma-up/issues/3586)) ([1b9e1de](https://github.com/Second-Live/karma-up/commit/1b9e1de7d081e1c205debff27c6b5e1fe0585dee)), closes [#3569](https://github.com/Second-Live/karma-up/issues/3569) * **deps:** freeze socket.io version ([73e300d](https://github.com/Second-Live/karma-up/commit/73e300da116540a0b63b4f34a4f9dfb74606b0a7)) * **deps:** freeze useragent version ([a8c8530](https://github.com/Second-Live/karma-up/commit/a8c8530f0f8d8715a3e75bed1961a0c14d821d6b)) * **deps:** lodash update. ([#3341](https://github.com/Second-Live/karma-up/issues/3341)) ([5614c04](https://github.com/Second-Live/karma-up/commit/5614c040f2e84d74ec95227c23d634356fbf5b60)) * **deps:** pin colors package to 1.4.0 due to security vulnerability ([a5219c5](https://github.com/Second-Live/karma-up/commit/a5219c52e2515248eefae4fe1863ac8ad3fdd43b)) * **deps:** remove babel-core and babel call in wallaby. ([#3044](https://github.com/Second-Live/karma-up/issues/3044)) ([7da8ca0](https://github.com/Second-Live/karma-up/commit/7da8ca058b3868669e4e57ae614c1bea4de9e2fd)) * **deps:** update colors to maintained version ([#3763](https://github.com/Second-Live/karma-up/issues/3763)) ([fca1884](https://github.com/Second-Live/karma-up/commit/fca18843e7a04eeb67b86cb3cfc3db794d66f445)) * **deps:** Update dependencies ([b9a4ce9](https://github.com/Second-Live/karma-up/commit/b9a4ce989436b7213178becb37c635476c8c11a1)), closes [#1410](https://github.com/Second-Live/karma-up/issues/1410) * **deps:** Update log4js in package.json ([#2996](https://github.com/Second-Live/karma-up/issues/2996)) ([667b47e](https://github.com/Second-Live/karma-up/commit/667b47efbe42800189efc9ba697f07c2671a7845)) * **deps:** update socket.io to version 2.0.3. ([3b7b019](https://github.com/Second-Live/karma-up/commit/3b7b0196e407687b9c1704c34a70f59ebf03b6a2)), closes [#2821](https://github.com/Second-Live/karma-up/issues/2821) [#2777](https://github.com/Second-Live/karma-up/issues/2777) * **deps:** Upgrade connect 3. ([b490985](https://github.com/Second-Live/karma-up/commit/b490985c6e165ba978d3f80078a45b44e18728fc)), closes [#1410](https://github.com/Second-Live/karma-up/issues/1410) * **deps:** upgrade sinon-chai 2.x -> 3.x ([#3207](https://github.com/Second-Live/karma-up/issues/3207)) ([dc5f5de](https://github.com/Second-Live/karma-up/commit/dc5f5de537903087afbcfea3d550601f5b380f56)) * **deps:** upgrade socket.io to v4.4.1 ([52a30bb](https://github.com/Second-Live/karma-up/commit/52a30bbc6e168333a8592c26c9f40678d6ab74ea)) * detect a full page reload, show error and recover ([15d80f4](https://github.com/Second-Live/karma-up/commit/15d80f47a227839e9b0d54aeddf49b9aa9afe8aa)), closes [#27](https://github.com/Second-Live/karma-up/issues/27) * detect type for URLs with query parameter or fragment identifier ([#3509](https://github.com/Second-Live/karma-up/issues/3509)) ([f399063](https://github.com/Second-Live/karma-up/commit/f399063d1bc8954dba74166ea3dabef2fe376ae4)), closes [#3497](https://github.com/Second-Live/karma-up/issues/3497) * do not execute already executing browsers ([00136cf](https://github.com/Second-Live/karma-up/commit/00136cf6d818b9bc6e4d77504e3ce1ed3d23d611)) * **doc:** Document release steps for admins ([#3063](https://github.com/Second-Live/karma-up/issues/3063)) ([a701732](https://github.com/Second-Live/karma-up/commit/a70173273aed9774f078ce3d2f1071f760dfbbaa)) * **docs:** fix stopper.stop wrong variable name. closes [#2244](https://github.com/Second-Live/karma-up/issues/2244) ([0745a00](https://github.com/Second-Live/karma-up/commit/0745a008f934f646bf38eadbbe9c18cd48f45c98)) * **docs:** Remove mention of pre 1.0.0 version ([#3010](https://github.com/Second-Live/karma-up/issues/3010)) ([6847ca0](https://github.com/Second-Live/karma-up/commit/6847ca04df4eecfc413bb75807b0146ba0d157a5)) * **docs:** Update 03-how-it-works.md ([#3539](https://github.com/Second-Live/karma-up/issues/3539)) ([e7cf7b1](https://github.com/Second-Live/karma-up/commit/e7cf7b11ca3f70a6401c0499376f78984b18e1cc)) * don't crash/terminate upon errors within chokidar ([2c38931](https://github.com/Second-Live/karma-up/commit/2c389311ce683646675adccf5a7b7b3160335148)), closes [#959](https://github.com/Second-Live/karma-up/issues/959) * don't mark a browser captured if already being killed/timeouted ([2123097](https://github.com/Second-Live/karma-up/commit/212309795861cf599dbcc0ed60fff612ccf25cf5)), closes [#88](https://github.com/Second-Live/karma-up/issues/88) * ensure that Karma supports running tests on IE 11 ([#3642](https://github.com/Second-Live/karma-up/issues/3642)) ([dbd1943](https://github.com/Second-Live/karma-up/commit/dbd1943e6901c4cb86280db7663afde32f9ab86c)) * eslint rules ([afb466d](https://github.com/Second-Live/karma-up/commit/afb466dfd6c7f6a269dbf4eefd12ee548305880f)) * **eslint:** Fix formatting for the new ESLint 1.8.0 ([dc1bbab](https://github.com/Second-Live/karma-up/commit/dc1bbab071e70227ffaa6230846d86f93ec4b03c)) * **events:** bind emitters with for..in. ([#3059](https://github.com/Second-Live/karma-up/issues/3059)) ([b99f03f](https://github.com/Second-Live/karma-up/commit/b99f03fcb8242dd2fd1ac769642c41314679833b)), closes [#3057](https://github.com/Second-Live/karma-up/issues/3057) * **events:** resolve async events without any listener ([4e4bba8](https://github.com/Second-Live/karma-up/commit/4e4bba8803d1e4f461e568cc2e2ccf82e369721d)) * **executor:** ensure run_complete is emitted last ([9c894f9](https://github.com/Second-Live/karma-up/commit/9c894f9eab19945b2c4355874d63854eb1c8ede7)), closes [#2210](https://github.com/Second-Live/karma-up/issues/2210) * few typos ([c6a4271](https://github.com/Second-Live/karma-up/commit/c6a42710b40e81269f1e6c5d5bb55d01188a8872)) * **file_list:** follow symlinks ([ee26748](https://github.com/Second-Live/karma-up/commit/ee2674834bc9d0008e6c2b686f45c9b62e41e3c2)) * **file_list:** Incorrect response after remove and add file ([0dbc020](https://github.com/Second-Live/karma-up/commit/0dbc0201b2d1f7c909f74816cc50bc68013fc70f)) * **file-list:** always use file from first matcher ([74bfdf3](https://github.com/Second-Live/karma-up/commit/74bfdf3f41781e3d77a293b36565a71e879979f9)) * **file-list:** do not define fs.statAsync ([#3467](https://github.com/Second-Live/karma-up/issues/3467)) ([55a59e7](https://github.com/Second-Live/karma-up/commit/55a59e70017af79d6f3c170d87d808acc8e21faf)) * **file-list:** do not preprocess up-to-date files ([#3196](https://github.com/Second-Live/karma-up/issues/3196)) ([5334d1a](https://github.com/Second-Live/karma-up/commit/5334d1a86b46f3c106b5a86f0bee7e4a58c5e4ae)), closes [#2829](https://github.com/Second-Live/karma-up/issues/2829) * **file-list:** Ensure autowatchDelay is working. ([655599a](https://github.com/Second-Live/karma-up/commit/655599ad295b3d3aa58aaa1ebf8ee5aa7ea9059b)), closes [#1520](https://github.com/Second-Live/karma-up/issues/1520) * **file-list:** Ensure files are sorted and unique ([9dc5f8b](https://github.com/Second-Live/karma-up/commit/9dc5f8bc431a648ca0e03bc83fbefbf8d3a92c6f)), closes [#1498](https://github.com/Second-Live/karma-up/issues/1498) [#1499](https://github.com/Second-Live/karma-up/issues/1499) * **file-list:** ensure patterns are comparable ([4d1bf3e](https://github.com/Second-Live/karma-up/commit/4d1bf3e1fa998df5bd08ebfb99f0a5f69a8f023d)), closes [#2194](https://github.com/Second-Live/karma-up/issues/2194) * **file-list:** Normalize glob patterns ([fb841a7](https://github.com/Second-Live/karma-up/commit/fb841a799d83209a6e0d58722cf6239e4990b946)), closes [#1494](https://github.com/Second-Live/karma-up/issues/1494) * **file-list:** refresh resolves before 'file_list_modified' event ([65f1eca](https://github.com/Second-Live/karma-up/commit/65f1ecad58782cd832febafabc8e01019402bd33)), closes [#1550](https://github.com/Second-Live/karma-up/issues/1550) * **file-list:** revert "do not preprocess up-to-date files" ([#3226](https://github.com/Second-Live/karma-up/issues/3226)) ([#3230](https://github.com/Second-Live/karma-up/issues/3230)) ([bb022a7](https://github.com/Second-Live/karma-up/commit/bb022a7fa06042eb0d98ed72c75b74038128d9c0)) * **file-list:** Stop polluting global environment with core-js ([0988022](https://github.com/Second-Live/karma-up/commit/0988022f49e182fc642d6fa8daea1926225bb653)) * **file-list:** Use correct find function ([4cfaae9](https://github.com/Second-Live/karma-up/commit/4cfaae96d829957c8fcda9f51c44eb51ca4c4ab0)) * **file-list:** use lodash find() ([3bd15a7](https://github.com/Second-Live/karma-up/commit/3bd15a7fc467830af107baa3a4a5469cc5ac2daa)), closes [#1533](https://github.com/Second-Live/karma-up/issues/1533) * **file-list:** Use modified throttle instead of debounce ([cb2aafb](https://github.com/Second-Live/karma-up/commit/cb2aafb3588904b2636e90521179b476301b031c)), closes [#1545](https://github.com/Second-Live/karma-up/issues/1545) * **filelist:** correct logger name. ([#3262](https://github.com/Second-Live/karma-up/issues/3262)) ([375bb5e](https://github.com/Second-Live/karma-up/commit/375bb5e37c34535e222e019d0b11454f5a2b1593)) * **files:** Ignore included:false pattern ([db42a7f](https://github.com/Second-Live/karma-up/commit/db42a7fb1d37fa1196759b4f6b12e39f612fae5c)), closes [#1530](https://github.com/Second-Live/karma-up/issues/1530) * filter browser logging by level of LOG ([89a7a1c](https://github.com/Second-Live/karma-up/commit/89a7a1cce68246c620f9959ee31133bfa42be5dc)), closes [#2228](https://github.com/Second-Live/karma-up/issues/2228) * fix running tests in IE9 ([#3668](https://github.com/Second-Live/karma-up/issues/3668)) ([0055bc5](https://github.com/Second-Live/karma-up/commit/0055bc5cbf75597fa1601661bc4bec8cc701a49a)), closes [/github.com/karma-runner/karma/blob/026fff870913fb6cd2858dd962935dc74c92b725/client/main.js#L14](https://github.com//github.com/karma-runner/karma/blob/026fff870913fb6cd2858dd962935dc74c92b725/client/main.js/issues/L14) [#3665](https://github.com/Second-Live/karma-up/issues/3665) * **flaky-test:** Add time to beforeEach() to allow plugins to load on first pass. ([#3025](https://github.com/Second-Live/karma-up/issues/3025)) ([31d9a08](https://github.com/Second-Live/karma-up/commit/31d9a08892f51308efbe7c467c379b3f70f1e416)) * global error handler should propagate errors ([dec0c19](https://github.com/Second-Live/karma-up/commit/dec0c19651c251dcbc16c44a57775bcb37f78cf1)), closes [#368](https://github.com/Second-Live/karma-up/issues/368) * **helper:** Ensure browser detection is handled in the unkown case ([9328f67](https://github.com/Second-Live/karma-up/commit/9328f67e20e4874b6b7cc9b9551cdf4725ce0620)) * **helper:** make mkdirIfNotExists helper resilient to concurrent calls ([d9dade2](https://github.com/Second-Live/karma-up/commit/d9dade2f004a340e49c9a633177576200c286404)), closes [/github.com/karma-runner/karma-coverage/issues/434#issuecomment-1017939333](https://github.com//github.com/karma-runner/karma-coverage/issues/434/issues/issuecomment-1017939333) * **helper:** Patched replaceWinPath from choking on `null` values ([caa4d21](https://github.com/Second-Live/karma-up/commit/caa4d21abb1a59ffc7d06b663b5165eceda0360e)) * if preprocessor is async function and doesn't return a content then await donePromise ([#3387](https://github.com/Second-Live/karma-up/issues/3387)) ([f91be24](https://github.com/Second-Live/karma-up/commit/f91be246e7607ea628bdc33511366ee0ea539978)) * ignore jsVersion configuration property in Firefox 59+ ([2694d54](https://github.com/Second-Live/karma-up/commit/2694d549e3a1940144cb548d7ad9b1996a103f42)), closes [#2957](https://github.com/Second-Live/karma-up/issues/2957) * improve error msg when bin is a directory ([#3231](https://github.com/Second-Live/karma-up/issues/3231)) ([584dddc](https://github.com/Second-Live/karma-up/commit/584dddce0d43c7de33a68e161933167f5a4ca209)) * **init:** add "ChromeHeadless" to the browsers' options ([#3096](https://github.com/Second-Live/karma-up/issues/3096)) ([56fda53](https://github.com/Second-Live/karma-up/commit/56fda53ec19a1a691cd80342fef9b23d9f9fe4d2)) * **init:** add missing browsers (Opera, IE) ([f39e564](https://github.com/Second-Live/karma-up/commit/f39e5645ec561c2681d907f7c1611f01911ee8fd)) * **init:** clean the terminal if killed ([e2aa749](https://github.com/Second-Live/karma-up/commit/e2aa74972ce84388a49090533e353b61bd9b16ed)) * **init:** fix for failing "testacular init" on Windows ([0b5b385](https://github.com/Second-Live/karma-up/commit/0b5b385383f13ac8f29fa6e591a8634eefa04ab7)) * **init:** fix logger configuration ([557922d](https://github.com/Second-Live/karma-up/commit/557922d71941e0929f9cdc0d3794424a1f27b311)) * **init:** fix test-main.(js/coffee) generation ([d8521ef](https://github.com/Second-Live/karma-up/commit/d8521ef4adc0d2878a67f076d5d2042d8a05bd5f)), closes [#1120](https://github.com/Second-Live/karma-up/issues/1120) [#896](https://github.com/Second-Live/karma-up/issues/896) * **init:** fix the logger configuration ([481dc3f](https://github.com/Second-Live/karma-up/commit/481dc3fd75f45a0efa8aabdb1c71e8234b9e8a06)), closes [#340](https://github.com/Second-Live/karma-up/issues/340) * **init:** Fix type in init text ([e34465b](https://github.com/Second-Live/karma-up/commit/e34465b01cc583cac9645acc98d20acbf471c856)), closes [#954](https://github.com/Second-Live/karma-up/issues/954) * **init:** generate config with the new syntax ([6b27fee](https://github.com/Second-Live/karma-up/commit/6b27fee5a43a7d02e706355f62fe5105b4966c43)) * **init:** generate correct indentation ([5fc1795](https://github.com/Second-Live/karma-up/commit/5fc17957be761c06f6ae120c5d3ba800dba8d3a4)) * **init:** generate plugins and frameworks config ([17798d5](https://github.com/Second-Live/karma-up/commit/17798d55988d61070f2b9f59574217208f2b497e)) * **init:** install plugin as dev dependency ([46b7a40](https://github.com/Second-Live/karma-up/commit/46b7a402fb8d700b10e2d72908c309d27212b5a0)) * **init:** Make the requirejs config template normalize paths ([54dcce3](https://github.com/Second-Live/karma-up/commit/54dcce31ea59ba8a425ee656be8b507ffe7d8248)), closes [/github.com/karma-runner/karma/issues/513#issuecomment-48616784](https://github.com//github.com/karma-runner/karma/issues/513/issues/issuecomment-48616784) * **init:** set default filename ([34d49b1](https://github.com/Second-Live/karma-up/commit/34d49b138f3bee8f17e1e9e343012d82887f906b)), closes [#680](https://github.com/Second-Live/karma-up/issues/680) [#681](https://github.com/Second-Live/karma-up/issues/681) * **init:** Support ChromeHeadless in `validateBrowser` ([#3110](https://github.com/Second-Live/karma-up/issues/3110)) ([eeadcf2](https://github.com/Second-Live/karma-up/commit/eeadcf299d990c3569252b5c15a1088d3846e99d)) * **init:** to not give false warning about missing requirejs ([562607a](https://github.com/Second-Live/karma-up/commit/562607a16221b256c6e92ad2029154aac88eec8d)) * **init:** trim the inputs ([b72355c](https://github.com/Second-Live/karma-up/commit/b72355cbeadc8e907e48bbd7d9a11e6de17343f7)), closes [#663](https://github.com/Second-Live/karma-up/issues/663) * install semantic-release as a regular dev dependency ([#3455](https://github.com/Second-Live/karma-up/issues/3455)) ([1eaf35e](https://github.com/Second-Live/karma-up/commit/1eaf35e1d616a2ef21dd00d843552f189fbc7c94)) * invalid characters in the headers on Node 5.6.0 ([152337d](https://github.com/Second-Live/karma-up/commit/152337d991392faecb604d124b8546f4b55e9612)) * **karma:** Escape quotes for file names. This fixes issue [#1876](https://github.com/Second-Live/karma-up/issues/1876). ([9dff3f3](https://github.com/Second-Live/karma-up/commit/9dff3f302ce40117f299b24e3e494e5c90c596da)) * keep all sockets in the case an old socket will survive ([a5945eb](https://github.com/Second-Live/karma-up/commit/a5945ebcf11c4b17b99c40b78d7e2946f79c77c2)) * launcher kill method which was throwing an error if no callback was specified ([5439f1c](https://github.com/Second-Live/karma-up/commit/5439f1cbbdce9de0c2193171f75798587221e257)) * **launcher:** Allow dynamic browser launches ([2b7d703](https://github.com/Second-Live/karma-up/commit/2b7d703b083f6467dbb3b3c7933a1086cefb7cd3)) * **launcher:** better errors when loading launchers ([504e848](https://github.com/Second-Live/karma-up/commit/504e848cf66b065380fa72e07f5337ae2d6e35b5)) * **launcher:** cancel kill timeout when process exits cleanly ([bd66274](https://github.com/Second-Live/karma-up/commit/bd662744bfbe353ccb63c7a795f691d12530129c)), closes [#946](https://github.com/Second-Live/karma-up/issues/946) * **launcher:** compatibility with Node v0.8 ([6a46be9](https://github.com/Second-Live/karma-up/commit/6a46be96499876e9aa0892325d783627bd1c535d)) * **launcher:** compatibility with old launchers ([df557ce](https://github.com/Second-Live/karma-up/commit/df557cec8093de301a8d7dea4ddca8670629c0af)) * **launcher:** compatibility with old launchers ([ffb7480](https://github.com/Second-Live/karma-up/commit/ffb74800638417910f453e108c8a4c6ffabaee29)) * **launcher:** Continue with exit when SIGKILL fails ([1eaccb4](https://github.com/Second-Live/karma-up/commit/1eaccb4cef9c299bac50514fcaa990de2c0f803f)) * **launcher:** Debug Child Processes exit signal ([#3259](https://github.com/Second-Live/karma-up/issues/3259)) ([c277a6b](https://github.com/Second-Live/karma-up/commit/c277a6bd130531702e2529f0410aa441328f187e)) * **launcher:** exclude concurrent browser on launcher restart ([96f8f14](https://github.com/Second-Live/karma-up/commit/96f8f14c99312d6b2a959d0a7ae39ac85fc4d862)), closes [#2280](https://github.com/Second-Live/karma-up/issues/2280) * **launcher:** handle ENOENT error, do not retry ([7d790b2](https://github.com/Second-Live/karma-up/commit/7d790b29c09c1f3784fe648b7d5ed16add10b4ca)), closes [#452](https://github.com/Second-Live/karma-up/issues/452) * **launcher:** ignore exit code when killing/timeouting ([1029bf2](https://github.com/Second-Live/karma-up/commit/1029bf2d7d3d22986aa41439d2ce4115770f4dbd)), closes [#444](https://github.com/Second-Live/karma-up/issues/444) * **launcher:** Log state transitions in debug ([#3294](https://github.com/Second-Live/karma-up/issues/3294)) ([6556ab4](https://github.com/Second-Live/karma-up/commit/6556ab4e0523e6be9f89f80f9b2d075338841a0b)), closes [#3290](https://github.com/Second-Live/karma-up/issues/3290) * **launcher:** Only markCaptured browsers that are launched. ([#3047](https://github.com/Second-Live/karma-up/issues/3047)) ([f8f3ebc](https://github.com/Second-Live/karma-up/commit/f8f3ebc45751ffba6ec1aa1d1554c7dfe91de85b)) * **launcher:** send sigkill on timeout when force killing ([c615c1f](https://github.com/Second-Live/karma-up/commit/c615c1ff9523b7485fc9552b7e8dbad20f044920)) * **launchers:** Listen to the correct error event. ([45a6922](https://github.com/Second-Live/karma-up/commit/45a69221703bbd043cd71b8b0934c4be5339e111)) * **lint:** exempt built files ([#3024](https://github.com/Second-Live/karma-up/issues/3024)) ([bc9acd3](https://github.com/Second-Live/karma-up/commit/bc9acd355a09eafa76a48dbe03c7c88909285bc9)) * **logger:** configure the logger as soon as possible ([0607d67](https://github.com/Second-Live/karma-up/commit/0607d67c15eab58ce83cce14ada70a1e2a9f17e9)) * **logger:** create parent folders if they are missing ([0d24bd9](https://github.com/Second-Live/karma-up/commit/0d24bd937f7089d1456e2ecf04419d2c268c3144)), closes [#3734](https://github.com/Second-Live/karma-up/issues/3734) * **logging:** Summarize SKIPPED tests in debug.html. ([a01100f](https://github.com/Second-Live/karma-up/commit/a01100f5c6404366dd4219b9bf6c3161300dc735)), closes [#1111](https://github.com/Second-Live/karma-up/issues/1111) * **logging:** Upgrade to log4js 2.x API. ([#2868](https://github.com/Second-Live/karma-up/issues/2868)) ([f6f8707](https://github.com/Second-Live/karma-up/commit/f6f8707efaff1fafdf9329501675518ec41f6b82)), closes [#2858](https://github.com/Second-Live/karma-up/issues/2858) * **logging:** Util inspect for logging the config. ([#3332](https://github.com/Second-Live/karma-up/issues/3332)) ([70b72a9](https://github.com/Second-Live/karma-up/commit/70b72a91834c531adc259b8d88f9907ec8d0d13d)) * make window.parent.karma available in debugged context ([3e7eaeb](https://github.com/Second-Live/karma-up/commit/3e7eaebb5bafa9ff93ff2f2f14e70f54979f8afb)) * Merge config child nodes on config.set() ([65b688a](https://github.com/Second-Live/karma-up/commit/65b688a9f50c289254da8936e870d1e44fe12831)), closes [karma-runner/grunt-karma#165](https://github.com/karma-runner/grunt-karma/issues/165) [karma-runner/grunt-karma#166](https://github.com/karma-runner/grunt-karma/issues/166) * **middleware/runner:** handle file list rejections ([#3400](https://github.com/Second-Live/karma-up/issues/3400)) ([80febfb](https://github.com/Second-Live/karma-up/commit/80febfb53a7d041bdcbcffef617e53cdc2d8dd66)), closes [#3396](https://github.com/Second-Live/karma-up/issues/3396) [#3396](https://github.com/Second-Live/karma-up/issues/3396) * **middleware:** Actually serve the favicon. ([f12db63](https://github.com/Second-Live/karma-up/commit/f12db639c9fe8d3f3210cc5868ae150179a06d3a)) * **middleware:** add file type to absolute urls ([bd1f799](https://github.com/Second-Live/karma-up/commit/bd1f799fda6a6eec2c16318cb1d18488fbf680e2)) * **middleware:** avoid using deprecated Buffer API ([018e6be](https://github.com/Second-Live/karma-up/commit/018e6bec1775d4a6442e2554e510a989c8f0d3be)), closes [/nodejs.org/api/deprecations.html#deprecations_dep0005](https://github.com//nodejs.org/api/deprecations.html/issues/deprecations_dep0005) * **middleware:** catch errors when loading a module ([#3605](https://github.com/Second-Live/karma-up/issues/3605)) ([fec972f](https://github.com/Second-Live/karma-up/commit/fec972ff63760f9606a4cef7673a68c55c880722)), closes [#3572](https://github.com/Second-Live/karma-up/issues/3572) * **middleware:** change to use vanilla for loop ([ac62cc0](https://github.com/Second-Live/karma-up/commit/ac62cc0f7d8d85a91626d47c006cc70f1cfafe9e)), closes [#2671](https://github.com/Second-Live/karma-up/issues/2671) * **middleware:** Correct spelling of middleware logger name ([9e9e7e6](https://github.com/Second-Live/karma-up/commit/9e9e7e6d6099963fdb3e13b68570d5bef11e1a45)) * **middleware:** does not work with mootools ([#2591](https://github.com/Second-Live/karma-up/issues/2591)) ([2685e13](https://github.com/Second-Live/karma-up/commit/2685e1357f457757c3fa3f5d84a837ed9a51b646)) * **middleware:** ensure Range headers adhere more closely to RFC 2616 ([8b1b4b1](https://github.com/Second-Live/karma-up/commit/8b1b4b1052925e15770a0d4017a6ebc9ea89c0ed)), closes [#2310](https://github.com/Second-Live/karma-up/issues/2310) * **middleware:** fix WARN log when passing undefined error handler to promise.then ([20b87de](https://github.com/Second-Live/karma-up/commit/20b87de18854c19373b935c2cfa7ed5fa4e3ec87)), closes [#2227](https://github.com/Second-Live/karma-up/issues/2227) * **middleware:** Inject `config.urlRoot`. ([569ca0e](https://github.com/Second-Live/karma-up/commit/569ca0e56671ecffbd247268c0a943c6bfd61ea7)), closes [#1516](https://github.com/Second-Live/karma-up/issues/1516) * **middleware:** log invalid filetype ([#3292](https://github.com/Second-Live/karma-up/issues/3292)) ([7eb48c5](https://github.com/Second-Live/karma-up/commit/7eb48c53c9e591b2f886baacf40468988219c360)), closes [#3291](https://github.com/Second-Live/karma-up/issues/3291) * **middleware:** Obey the Promise API. ([93ba05a](https://github.com/Second-Live/karma-up/commit/93ba05ad476ed055e3355f7c4cc03eccd7874e74)) * **middleware:** replace %X_UA_COMPATIBLE% marker anywhere in the file ([f1aeaec](https://github.com/Second-Live/karma-up/commit/f1aeaec09e49856747b8f650d06b4dcc61eb637e)), closes [#3711](https://github.com/Second-Live/karma-up/issues/3711) * **middleware:** simplify stripHost. ([#3115](https://github.com/Second-Live/karma-up/issues/3115)) ([d65e911](https://github.com/Second-Live/karma-up/commit/d65e911c80f0ccb3d6dac5634c89d93ff45e9ca8)) * **middleware:** update `Buffer` usage ([3d94b8c](https://github.com/Second-Live/karma-up/commit/3d94b8cf18c695104ca195334dc75ff054c74eec)) * **package.json:** sinon-chai 2.13 is not compatible with sinon 4.x ([#2977](https://github.com/Second-Live/karma-up/issues/2977)) ([e095b05](https://github.com/Second-Live/karma-up/commit/e095b054b1da153c8557e4637012459eace35959)) * **package:** bump lodash version ([#3203](https://github.com/Second-Live/karma-up/issues/3203)) ([d38f344](https://github.com/Second-Live/karma-up/commit/d38f344dbca9696d88e0f055b2b4c7dd150708a7)), closes [#3177](https://github.com/Second-Live/karma-up/issues/3177) * pass integrity value ([63d86be](https://github.com/Second-Live/karma-up/commit/63d86befd3431fe8e1500e22f4f115a3762d000a)) * patch karma to allow loading virtual packages ([#3663](https://github.com/Second-Live/karma-up/issues/3663)) ([5bfcf5f](https://github.com/Second-Live/karma-up/commit/5bfcf5f37de6f0a12abcf9914c2fad510395b4d6)) * **plugins:** refactor instantiatePlugin from preproprocessor ([#3628](https://github.com/Second-Live/karma-up/issues/3628)) ([e02858a](https://github.com/Second-Live/karma-up/commit/e02858ae0d0de3f05add976b10e4b6b935cc3dd7)) * prefer IPv4 addresses when resolving domains ([e17698f](https://github.com/Second-Live/karma-up/commit/e17698f950af83bf2b3edc540d2a3e1fb73cba59)), closes [#3730](https://github.com/Second-Live/karma-up/issues/3730) * **preprocessor:** better errors when loading preprocessors ([3390a00](https://github.com/Second-Live/karma-up/commit/3390a00b49c513a6da60f48044462118436130f8)) * **preprocessor:** calculate sha1 on content returned from a preprocessor ([6cf7955](https://github.com/Second-Live/karma-up/commit/6cf795576bd6d77decac68ecc4838871b6df4836)), closes [#1204](https://github.com/Second-Live/karma-up/issues/1204) * **preprocessor:** consider SVG files as text files, not binary files ([ff28803](https://github.com/Second-Live/karma-up/commit/ff2880369f0c4e8b78d95bb20365cead340f8fc9)), closes [#1026](https://github.com/Second-Live/karma-up/issues/1026) * **preprocessor:** Directory names with dots ([4b5e094](https://github.com/Second-Live/karma-up/commit/4b5e09403680ca3bf15a6f92da7e03335cfaaad8)) * **preprocessor:** do not show duplicate warnings ([47c641f](https://github.com/Second-Live/karma-up/commit/47c641f7560d28e0d9eac7ae010566d296d5b628)) * **preprocessor:** Improve handling of failed preprocessors ([e726d1c](https://github.com/Second-Live/karma-up/commit/e726d1c4e177a54729f22d91f3d8a5dc04694781)), closes [#1521](https://github.com/Second-Live/karma-up/issues/1521) * **preprocessor:** Lookup patterns once invoked ([00a2781](https://github.com/Second-Live/karma-up/commit/00a278133964e70904f6e9bdec9a488a4902b28c)), closes [#1340](https://github.com/Second-Live/karma-up/issues/1340) * **preprocessor:** remove ts from binary extensions ([8269852](https://github.com/Second-Live/karma-up/commit/8269852304d2d420bb25a0e4bb13bba58a339f39)) * **preprocessor:** renamed handeFile to readFileCallback ([92a8c81](https://github.com/Second-Live/karma-up/commit/92a8c81fbed0cae423fbd84d3e64bc4086fd30af)) * **preprocessor:** resolve relative patterns to basePath ([c608a9e](https://github.com/Second-Live/karma-up/commit/c608a9e5a34a49da2971add8759a9422b74fa6fd)), closes [#382](https://github.com/Second-Live/karma-up/issues/382) * **preprocessor:** retry if fs.readFile fails ([4b60513](https://github.com/Second-Live/karma-up/commit/4b605137796f275f4aff3cd0481c78ca153aaf51)) * **preprocessor:** serve NaCl binaries ([1cc6a1e](https://github.com/Second-Live/karma-up/commit/1cc6a1e34b24768bffdaf47fb5e36559f5dc5135)) * **preprocessor:** Throw error if can't open file ([bb4edde](https://github.com/Second-Live/karma-up/commit/bb4edde9f15a07e6dac0d4dc01731f1e277d34a4)) * **preprocessor:** throw if retry fails ([2789bf5](https://github.com/Second-Live/karma-up/commit/2789bf57abd977def5caf22609eef74acbad292e)) * **preprocessor:** treat *.gz files as binary ([1b56932](https://github.com/Second-Live/karma-up/commit/1b56932fb49e0f3793f00599e11c24f6254236f4)) * **preprocessor:** treat *.swf files as binary ([62d7d38](https://github.com/Second-Live/karma-up/commit/62d7d3873ed3e046ab24530cb20297ddad51cf85)) * **preprocessor:** treat *.tgz, *.tbz2, *.txz & *.xz as binary ([7b64244](https://github.com/Second-Live/karma-up/commit/7b642449811b0c0af63147f74159c6dbb8900563)) * **preprocessor:** use graceful-fs to prevent EACCESS errors ([279bcab](https://github.com/Second-Live/karma-up/commit/279bcab54019a0f0af72c7c08017cf4cdefebe46)), closes [#566](https://github.com/Second-Live/karma-up/issues/566) * **preprocess:** set correct extension for the preprocessed path ([c9a64d2](https://github.com/Second-Live/karma-up/commit/c9a64d2f1a94c0a7dab2fcde79696c139d958c57)), closes [#843](https://github.com/Second-Live/karma-up/issues/843) * **proxy:** fix crashing proxy when browser hangs connection ([1c78a01](https://github.com/Second-Live/karma-up/commit/1c78a01a19411accb86f0bde9e040e5088752575)) * **proxy:** handle proxied socket.io websocket transport upgrade ([fcc2a98](https://github.com/Second-Live/karma-up/commit/fcc2a98f6af5f71a929130825b18db56557f29f7)) * **proxy:** More useful proxyError log message ([96640a7](https://github.com/Second-Live/karma-up/commit/96640a75dab089255c0619733ca9d5f9fe80127d)) * **proxy:** Pass protocol in target object to enable https requests ([142db90](https://github.com/Second-Live/karma-up/commit/142db90d33026710e92158e0e48abd7b30c5973e)) * **proxy:** Port mixup and infinite loop ([05616a2](https://github.com/Second-Live/karma-up/commit/05616a2f4ceca7e86f35a921ab26fe571db33cc9)), closes [#1987](https://github.com/Second-Live/karma-up/issues/1987) * **proxy:** proxy to correct port ([a483636](https://github.com/Second-Live/karma-up/commit/a483636efd440c13e6db36f6b661861558464089)) * remove broken link from docs - 06-angularjs.md ([#3555](https://github.com/Second-Live/karma-up/issues/3555)) ([da2f307](https://github.com/Second-Live/karma-up/commit/da2f307603dbdeb9b49e30ebdbbe9ce68ccc2e9e)) * remove circular reference in Browser ([518cb11](https://github.com/Second-Live/karma-up/commit/518cb118d8f90b2a64846a109a974b1b5873aabf)), closes [#3075](https://github.com/Second-Live/karma-up/issues/3075) * remove depreciation warning from log4js ([41bed33](https://github.com/Second-Live/karma-up/commit/41bed33bf4b88c7e0787ca3a5ec15f2913b936fd)) * Remove inadvertently added dependency to mock-fs ([ad5f6b5](https://github.com/Second-Live/karma-up/commit/ad5f6b55da5984caa9a5365a43cdd66d5ecd196f)) * remove string template from client code ([91d5acd](https://github.com/Second-Live/karma-up/commit/91d5acda6325caf91685da465d688527bd412b47)) * remove support of jsVersion configuration property ([#3002](https://github.com/Second-Live/karma-up/issues/3002)) ([2bb4e36](https://github.com/Second-Live/karma-up/commit/2bb4e3691cc79ea7d46096c6cf154e5f3acc82af)), closes [#2911](https://github.com/Second-Live/karma-up/issues/2911) * remove unused JSON utilities and flatted dependency ([#3550](https://github.com/Second-Live/karma-up/issues/3550)) ([beed255](https://github.com/Second-Live/karma-up/commit/beed255698c2efb3b7139f2145123829578345f6)) * remove vulnerable dependency combine-lists ([#3273](https://github.com/Second-Live/karma-up/issues/3273)) ([c43f584](https://github.com/Second-Live/karma-up/commit/c43f58427227e6a7fbaa95420a72ca9018839b87)), closes [#3265](https://github.com/Second-Live/karma-up/issues/3265) * remove vulnerable dependency expand-braces ([#3270](https://github.com/Second-Live/karma-up/issues/3270)) ([4ec4f6f](https://github.com/Second-Live/karma-up/commit/4ec4f6f26b175e3f759dfae9c1ba6a41654185da)), closes [#3268](https://github.com/Second-Live/karma-up/issues/3268) [#3269](https://github.com/Second-Live/karma-up/issues/3269) * report launcher process error when exit event is not emitted ([#3647](https://github.com/Second-Live/karma-up/issues/3647)) ([7ab86be](https://github.com/Second-Live/karma-up/commit/7ab86be25c334b07747632b0a6bdb1d650d881bc)) * **reporter.junit:** Add browser log output to JUnit.xml ([f108799](https://github.com/Second-Live/karma-up/commit/f108799a4d8fd95b8c0250ee83c23ada25d026b9)), closes [#302](https://github.com/Second-Live/karma-up/issues/302) * **reporter:** better errors when loading reporters ([c645c06](https://github.com/Second-Live/karma-up/commit/c645c060c4f381902c2005eefe5b3a7bfa63cdcc)) * **reporter:** Better handling of non string error ([82f1c12](https://github.com/Second-Live/karma-up/commit/82f1c1207b34955602b7590a34f8bf50b1a5ba6a)), closes [#1969](https://github.com/Second-Live/karma-up/issues/1969) [#1988](https://github.com/Second-Live/karma-up/issues/1988) * **reporter:** Disable source maps for URLs without line number ([2080221](https://github.com/Second-Live/karma-up/commit/2080221e6bac3ef6dbff0e4aab7784385034d227)), closes [#1274](https://github.com/Second-Live/karma-up/issues/1274) * **reporter:** do not allow URL domains to span new lines ([2c13404](https://github.com/Second-Live/karma-up/commit/2c1340437171778961ba333fd7ccd311c84377a8)) * **reporter:** Enable sourcemaps for errors that without column # ([086a542](https://github.com/Second-Live/karma-up/commit/086a5427142f161c288f3b7daccc0e43cd223ddd)) * **reporter:** Ensure errors use the source map. ([0407a22](https://github.com/Second-Live/karma-up/commit/0407a2280b01972ebcebe9ad341cff87c788975e)), closes [#1495](https://github.com/Second-Live/karma-up/issues/1495) * **reporter:** Fix issue causing error stack not to be parsed correctly ([ac4e1a9](https://github.com/Second-Live/karma-up/commit/ac4e1a9f01d671c71ccbf15a34c59e2be19da98a)), closes [#2930](https://github.com/Second-Live/karma-up/issues/2930) * **reporter:** format stack with 1-based column ([#3325](https://github.com/Second-Live/karma-up/issues/3325)) ([182c04d](https://github.com/Second-Live/karma-up/commit/182c04d4617ed173d9445e0d83581829ba704b65)), closes [#3324](https://github.com/Second-Live/karma-up/issues/3324) * **reporter:** inject correct config option ([80bd726](https://github.com/Second-Live/karma-up/commit/80bd726807cbc509fb73720df50366c54d779ba1)) * **reporter:** keep users exact formatError result ([17c2c43](https://github.com/Second-Live/karma-up/commit/17c2c43a7ce3f6346ddffdeb2b283f286e9e4bb8)) * **reporter:** preserve base/absolute word in error ([b3798df](https://github.com/Second-Live/karma-up/commit/b3798dfd77adbcb0a3ab05579a0d277d7178776f)) * **reporter:** prevent throwing exception when null is sent to formatter ([3b49c38](https://github.com/Second-Live/karma-up/commit/3b49c385fcc8ef96e72be390df058bd278b40c17)) * **reporter:** print browser stats immediately after it finishes ([65202d8](https://github.com/Second-Live/karma-up/commit/65202d870fa602e70483aeebbf87d0e11d6c1017)) * **reporter:** remove console.log ([b4e3694](https://github.com/Second-Live/karma-up/commit/b4e3694435de80c97976f1a368303528ab85f0d9)) * **reporter:** remove newline from base reporter browser dump ([dfae18b](https://github.com/Second-Live/karma-up/commit/dfae18b63b413a1e6240d00b9dc0521ac0386ec5)), closes [#297](https://github.com/Second-Live/karma-up/issues/297) * **reporter:** remove SHAs from stack traces ([d7c31f9](https://github.com/Second-Live/karma-up/commit/d7c31f97be654f08d484563282a68d59638c5693)) * **reporters:** cannot read property map of undefined ([305df2c](https://github.com/Second-Live/karma-up/commit/305df2cafd25421042a74bf076f6e24f58b75c6f)), closes [#1662](https://github.com/Second-Live/karma-up/issues/1662) * **reporters:** Fix results not being reported ([6303566](https://github.com/Second-Live/karma-up/commit/63035662cf3484b189270d3b4d15762331012577)) * **reporters:** format fix for console log ([d2d1377](https://github.com/Second-Live/karma-up/commit/d2d1377d1be0da17196a1c82bf5584997d502b68)), closes [#934](https://github.com/Second-Live/karma-up/issues/934) * **reporter:** show file path correctly when urlRoot specified ([34dc7d3](https://github.com/Second-Live/karma-up/commit/34dc7d3a7d3aac1adf88ff020ee910e59bed5aea)), closes [#2897](https://github.com/Second-Live/karma-up/issues/2897) * **reporter:** sourcemap not working in windows ([a9516af](https://github.com/Second-Live/karma-up/commit/a9516af2af87953154e81b6080214798a9b64da5)), closes [#1200](https://github.com/Second-Live/karma-up/issues/1200) * **reporters:** Revert the backwards-incompatible log priority order changes ([316b944](https://github.com/Second-Live/karma-up/commit/316b944d2ee7b1c9d011472dc41f149f92e88f26)), closes [#2582](https://github.com/Second-Live/karma-up/issues/2582) * **reporters:** Throwing error without loosing stack trace ([8a515ae](https://github.com/Second-Live/karma-up/commit/8a515ae43af0dfb95f56351d2888b3d648fdf93b)) * **reporter:** strip only hostname/port ([fbbeccf](https://github.com/Second-Live/karma-up/commit/fbbeccf936a08e5296ffbe41e02c82c4a014c80e)), closes [#2209](https://github.com/Second-Live/karma-up/issues/2209) * **reporter:** warning if stack trace contains generated code invocation ([4f23b14](https://github.com/Second-Live/karma-up/commit/4f23b14d3e774c0401f2c9eecb188b37aed020eb)) * restarted browsers not running tests ([#3233](https://github.com/Second-Live/karma-up/issues/3233)) ([cc2eff2](https://github.com/Second-Live/karma-up/commit/cc2eff27deb680f789afb34577fd337d2ad5dcac)) * restartOnFileChange option not restarting the test run ([92ffe60](https://github.com/Second-Live/karma-up/commit/92ffe6018451f6144e8bc7726d304057b5ac9d0a)), closes [#27](https://github.com/Second-Live/karma-up/issues/27) [#3724](https://github.com/Second-Live/karma-up/issues/3724) * restore `customFileHandlers` provider ([#3624](https://github.com/Second-Live/karma-up/issues/3624)) ([25d9abb](https://github.com/Second-Live/karma-up/commit/25d9abb76929b6ea8abe1cf040ba6db2f269d50e)) * restore backward compatibility for karma@0.13 ([648b357](https://github.com/Second-Live/karma-up/commit/648b357a0061b62448428eed379276836f92dbe5)) * reuse browser instance when restarting disconnected browser ([1f1a8eb](https://github.com/Second-Live/karma-up/commit/1f1a8ebf38827fe772c631de200fdfa4a705a40b)) * revert source-map update ([#3559](https://github.com/Second-Live/karma-up/issues/3559)) ([d9ba284](https://github.com/Second-Live/karma-up/commit/d9ba2849ced403a2ff2574d8e3a14deee21f1cc4)), closes [#3557](https://github.com/Second-Live/karma-up/issues/3557) * **runner:** do not confuse client args with the config file ([6f158ab](https://github.com/Second-Live/karma-up/commit/6f158abaf923dad6878a64da2d8a3c2c56ae604f)) * **runner:** Do not persist grep option across runs ([#3121](https://github.com/Second-Live/karma-up/issues/3121)) ([c91cb81](https://github.com/Second-Live/karma-up/commit/c91cb81e496c2e8c758304d77e7c3b7a7c29f073)) * **runner:** Fix typo in CSS class name for .idle ([fc5a7ce](https://github.com/Second-Live/karma-up/commit/fc5a7ce0904a78ece6a9cfa29215b17bd5c1929d)) * **runner:** Karma hangs when file paths have \u in them [#924](https://github.com/Second-Live/karma-up/issues/924) ([1199fc4](https://github.com/Second-Live/karma-up/commit/1199fc4d7ee7be2d48a707876ddb857544cf2fb4)) * **runner:** Make exit code configurable when tests are failing ([#3116](https://github.com/Second-Live/karma-up/issues/3116)) ([74da748](https://github.com/Second-Live/karma-up/commit/74da748908bde520a53c3cbc22dd891d7f2d170a)), closes [#1300](https://github.com/Second-Live/karma-up/issues/1300) * **runner:** Make process kill timeout configurable ([ffaa054](https://github.com/Second-Live/karma-up/commit/ffaa054a299a1abd68ab99769394b70ee5d08a19)), closes [#2447](https://github.com/Second-Live/karma-up/issues/2447) * **runner:** Make process kill timeout configurable - Fix Build ([a128e5c](https://github.com/Second-Live/karma-up/commit/a128e5cf64d744ae648a0885c4151c877cf5eff9)), closes [#2447](https://github.com/Second-Live/karma-up/issues/2447) * **runner:** Merge config.client.args with client.args provided by run ([91de383](https://github.com/Second-Live/karma-up/commit/91de383826d16add153292f38c0426ef7c44da17)), closes [#1746](https://github.com/Second-Live/karma-up/issues/1746) * **runner:** remove explicit error on all tests failed ([#3369](https://github.com/Second-Live/karma-up/issues/3369)) ([f8005c6](https://github.com/Second-Live/karma-up/commit/f8005c6307d530c703f3db266f31e40d55049fb6)), closes [#3367](https://github.com/Second-Live/…
# 1.0.0-alpha.1 (2023-09-19) ### Bug Fixes * a missed argument in a debug message ([#3009](https://github.com/Second-Live/karma-up/issues/3009)) ([af8c6e4](https://github.com/Second-Live/karma-up/commit/af8c6e407fa88de1b8ee034cf41a4c83ad832877)) * **adapter.requirejs:** do not configure baseUrl automatically ([63f3f40](https://github.com/Second-Live/karma-up/commit/63f3f409ae85a5137396a7ed6537bedfe4437cb3)), closes [#291](https://github.com/Second-Live/karma-up/issues/291) [#292](https://github.com/Second-Live/karma-up/issues/292) [#291](https://github.com/Second-Live/karma-up/issues/291) * **adapter.requirejs:** show error if no timestamp defined for a file ([59dbdbd](https://github.com/Second-Live/karma-up/commit/59dbdbd136baa87467b9b9a4cb6ce226ae87bbef)) * Add crossorigin attribute to script HTML tags ([5690ffe](https://github.com/Second-Live/karma-up/commit/5690ffe82bb7ff195576f6f43dd8c281e51aa833)) * add emscripten memory image as binary suffix ([f6b2b56](https://github.com/Second-Live/karma-up/commit/f6b2b561c5d5e083cd204df9564024cac163b611)) * add missing dep flatted ([#3223](https://github.com/Second-Live/karma-up/issues/3223)) ([655d4d2](https://github.com/Second-Live/karma-up/commit/655d4d27e93a2011a00ea6ef3caf12a583ed4589)) * avoid ES6+ syntax in client scripts ([#3629](https://github.com/Second-Live/karma-up/issues/3629)) ([6629e96](https://github.com/Second-Live/karma-up/commit/6629e96901dbeae24fbaa4d0bfa009618fb8ee75)), closes [#3630](https://github.com/Second-Live/karma-up/issues/3630) * **BaseReporter:** log message correctly with just one browser ([#3045](https://github.com/Second-Live/karma-up/issues/3045)) ([c1eb236](https://github.com/Second-Live/karma-up/commit/c1eb236523f8dab7e5f7dc70f4ee016b8061f0ba)) * better error reporting when loading plugins ([d9078a8](https://github.com/Second-Live/karma-up/commit/d9078a8eca41df15f26b53e2375f722a48d0992d)) * better serialization in dump/console.log ([fd46365](https://github.com/Second-Live/karma-up/commit/fd46365d1fd3a9bea15c04abeb7df33a3a2d96a4)), closes [#640](https://github.com/Second-Live/karma-up/issues/640) * **browser:** allow updating total specs count ([#3264](https://github.com/Second-Live/karma-up/issues/3264)) ([d5df723](https://github.com/Second-Live/karma-up/commit/d5df723f97d1b48133416109276feebb0c6fa82d)) * **browser:** don't add already active socket again on reconnect ([37a7958](https://github.com/Second-Live/karma-up/commit/37a7958ae5517b8bf16e36cc90fe0b1cf0c09afd)) * **browser:** emit 'browsers_change' in collection ([#3183](https://github.com/Second-Live/karma-up/issues/3183)) ([7634e71](https://github.com/Second-Live/karma-up/commit/7634e7145b4220123f317d652b3dd13bd12c32ec)) * **browser:** ensure browser state is EXECUTING when tests start ([#3074](https://github.com/Second-Live/karma-up/issues/3074)) ([dc7265b](https://github.com/Second-Live/karma-up/commit/dc7265bbb5e92b3b9fd48ce85dbdc0d776772cf5)), closes [#1640](https://github.com/Second-Live/karma-up/issues/1640) * **browser:** filter browser logging by level ([35965d9](https://github.com/Second-Live/karma-up/commit/35965d9e996d462e471044b338ac038d2787c26d)), closes [#2228](https://github.com/Second-Live/karma-up/issues/2228) * **browser:** make sure that empty results array is still recognized ([#3486](https://github.com/Second-Live/karma-up/issues/3486)) ([fa95fa3](https://github.com/Second-Live/karma-up/commit/fa95fa3c917470fa4b9ad736287379d1e9ebb350)) * **browser:** nicer "disconnect" - no more "Disconnectedundefined" ([a987d63](https://github.com/Second-Live/karma-up/commit/a987d6366f9bfc9514c73f85a94c2c31a0019924)) * **browser:** reply "start" event ([4fde43d](https://github.com/Second-Live/karma-up/commit/4fde43deee22b53fcca52132c51c27f4012d2933)) * **browser:** report errors to console during singleRun=false ([#3209](https://github.com/Second-Live/karma-up/issues/3209)) ([30ff73b](https://github.com/Second-Live/karma-up/commit/30ff73b35816dad727dd04487f809497f952add5)), closes [#3131](https://github.com/Second-Live/karma-up/issues/3131) * browsers_change event always has collection as arg ([42bf787](https://github.com/Second-Live/karma-up/commit/42bf787f87304e6be23dd3dac893b3c3f77d6764)) * **build:** pin npm version in appveyor to v3, compat with node 4 ([#2983](https://github.com/Second-Live/karma-up/issues/2983)) ([bc1453e](https://github.com/Second-Live/karma-up/commit/bc1453e3198faa53dd6b02a23b1d3b3911d6b467)) * **build:** switch from yarn to package-lock.json ([#3351](https://github.com/Second-Live/karma-up/issues/3351)) ([6c5add2](https://github.com/Second-Live/karma-up/commit/6c5add2449a5a0ef33e1907f6711309a13e429d1)) * bump production dependencies within SemVer ranges ([#3682](https://github.com/Second-Live/karma-up/issues/3682)) ([36467a8](https://github.com/Second-Live/karma-up/commit/36467a8ac357108343dde4131ef34099004711e5)), closes [#3680](https://github.com/Second-Live/karma-up/issues/3680) * bump vulnerable ua-parser-js version ([6f2b2ec](https://github.com/Second-Live/karma-up/commit/6f2b2ec6ed0218980eabf2cbf44e0c8f16fee661)), closes [#3713](https://github.com/Second-Live/karma-up/issues/3713) * call .resume to prevent browser output streams filling up ([107cd02](https://github.com/Second-Live/karma-up/commit/107cd02f5f9e42010628facdd12636f65774ecf7)) * capturing console.log on IE ([fa4b686](https://github.com/Second-Live/karma-up/commit/fa4b686a81ad826f256a4ca63c772af7ad6e411e)), closes [#329](https://github.com/Second-Live/karma-up/issues/329) * catch exceptions from SourceMapConsumer ([5d42e64](https://github.com/Second-Live/karma-up/commit/5d42e64373345f1beed95218983861f77352c16c)) * Change timing on test ([0cb6204](https://github.com/Second-Live/karma-up/commit/0cb6204f157c4ec1078aeb622ea33bbde930da4a)) * **changelog:** remove release which does not exist ([#3214](https://github.com/Second-Live/karma-up/issues/3214)) ([4e87902](https://github.com/Second-Live/karma-up/commit/4e8790212d3ea712be3184349ff5041d20473baa)) * **ci:** abandon browserstack tests for Safari and IE ([#3615](https://github.com/Second-Live/karma-up/issues/3615)) ([04a811d](https://github.com/Second-Live/karma-up/commit/04a811dc7a4b37aa56c0405880f03cb2493bf820)) * **ci:** echo travis env that gates release after_success ([#3446](https://github.com/Second-Live/karma-up/issues/3446)) ([b8b2ed8](https://github.com/Second-Live/karma-up/commit/b8b2ed81e595baf0337c9628a736494b9f2c91c1)) * **ci:** poll every 10s to avoid rate limit. ([#3388](https://github.com/Second-Live/karma-up/issues/3388)) ([91e7e00](https://github.com/Second-Live/karma-up/commit/91e7e00b29db95ea7209f60c07431b10ab597b02)) * **ci:** Repaired AppVeyor for Node.js@0.12 ([cbfd98c](https://github.com/Second-Live/karma-up/commit/cbfd98ccb4e48de51b604e8148f3279a25a6edc6)) * **ci:** stop the proxy before killing the child, handle errors ([#3472](https://github.com/Second-Live/karma-up/issues/3472)) ([abe9af6](https://github.com/Second-Live/karma-up/commit/abe9af616f7a08f3c64cc06f6a68bd5f9c941133)), closes [#3464](https://github.com/Second-Live/karma-up/issues/3464) * **cli:** Always pass an instance of fs to processArgs. ([06532b7](https://github.com/Second-Live/karma-up/commit/06532b7042371f270c227a1a7f859f2dab5afac1)), closes [#677](https://github.com/Second-Live/karma-up/issues/677) * **client.html:** always open debug.html in a new browser process ([d176bcf](https://github.com/Second-Live/karma-up/commit/d176bcf47e9b3a7df8c6ae691f767f1012214c53)) * **client:** add ES5 shim ([14c30b7](https://github.com/Second-Live/karma-up/commit/14c30b734fc14057b51f17c543431711c6ad57e9)), closes [#1529](https://github.com/Second-Live/karma-up/issues/1529) * **client:** add proxy support to stringify ([be10116](https://github.com/Second-Live/karma-up/commit/be10116dde92f3c5f87a09cec93f19665b95c129)) * **client:** avoid race between execute and clearContext ([#3452](https://github.com/Second-Live/karma-up/issues/3452)) ([8bc5b46](https://github.com/Second-Live/karma-up/commit/8bc5b468393bb90c0cac8f400d61e3434596c05a)), closes [#3424](https://github.com/Second-Live/karma-up/issues/3424) * **client:** check in bundled client code into version control ([#3524](https://github.com/Second-Live/karma-up/issues/3524)) ([6cd5a3b](https://github.com/Second-Live/karma-up/commit/6cd5a3b091490ad1c621710456f359213f0c161e)), closes [/github.com/karma-runner/karma/commit/f5521df7df5cd1201b5dce28dc4e326b1ffc41fd#commitcomment-38967493](https://github.com//github.com/karma-runner/karma/commit/f5521df7df5cd1201b5dce28dc4e326b1ffc41fd/issues/commitcomment-38967493) * **client:** clearContext after complete sent ([#3657](https://github.com/Second-Live/karma-up/issues/3657)) ([c0962e3](https://github.com/Second-Live/karma-up/commit/c0962e34fb2c0a7a43bead8d600ad4a6dbb29c3d)) * **client:** do not reset karmaNavigating in unload handler ([#3591](https://github.com/Second-Live/karma-up/issues/3591)) ([4a8178f](https://github.com/Second-Live/karma-up/commit/4a8178f3a0504ef007b23ef0fd8f5ca128f0c5c6)), closes [#3482](https://github.com/Second-Live/karma-up/issues/3482) * **client:** does not throws an error for non DOM object that has `tagName` property ([ba55afb](https://github.com/Second-Live/karma-up/commit/ba55afb30e402e0e930f8c0d025fa6bec1d052e1)), closes [#2139](https://github.com/Second-Live/karma-up/issues/2139) * **client:** don't crash if receive array-like results ([e095411](https://github.com/Second-Live/karma-up/commit/e095411f3f7684b2ad96f31abb5eba3cd7fd54da)), closes [#2061](https://github.com/Second-Live/karma-up/issues/2061) * **client:** dynamic protocol for socket.io ([c986eef](https://github.com/Second-Live/karma-up/commit/c986eefeba01ef46a8bb7595a8285ff24986126c)), closes [#1400](https://github.com/Second-Live/karma-up/issues/1400) * **client:** Enable loading different file types when running in parent mode without iframe ([#3289](https://github.com/Second-Live/karma-up/issues/3289)) ([7968db6](https://github.com/Second-Live/karma-up/commit/7968db63eb9899961dec19655904502334043735)) * **client:** error out when opening a new tab fails ([099b85e](https://github.com/Second-Live/karma-up/commit/099b85ed0a46e37dd7cb14fc1596cbb1b3eabce9)) * **client:** fix a false positive page reload error in Safari ([#3643](https://github.com/Second-Live/karma-up/issues/3643)) ([2a57b23](https://github.com/Second-Live/karma-up/commit/2a57b230cd6b27e1a6e903ca6557c5a6b3e31bf6)) * **client:** fix issue with loaded on safari 10 ([#3252](https://github.com/Second-Live/karma-up/issues/3252)) ([571191c](https://github.com/Second-Live/karma-up/commit/571191cfbe41010c6fa4283bd7d8447d5fcbb4ba)), closes [#3198](https://github.com/Second-Live/karma-up/issues/3198) * **client:** Fix stringify serializing objects ([0d0972a](https://github.com/Second-Live/karma-up/commit/0d0972a59e6e0354033c9fdfec72d5ddfbfe8e1e)) * **client:** flush resultsBuffer on engine upgrade ([#3212](https://github.com/Second-Live/karma-up/issues/3212)) ([e44ca94](https://github.com/Second-Live/karma-up/commit/e44ca944fe94ae455cd6dc45d9985a6d9fb94754)), closes [#3211](https://github.com/Second-Live/karma-up/issues/3211) * **client:** Only create the funky object if message is not a string ([#3298](https://github.com/Second-Live/karma-up/issues/3298)) ([ce6825f](https://github.com/Second-Live/karma-up/commit/ce6825f4c88c2737fd6bd943e006c6ab5a0fe485)), closes [#3296](https://github.com/Second-Live/karma-up/issues/3296) * **client:** prevent socket.io from hanging due to mocked clocks ([#3695](https://github.com/Second-Live/karma-up/issues/3695)) ([105da90](https://github.com/Second-Live/karma-up/commit/105da90a9975c1050f96cda966bd30a3c677494e)) * **client:** redirect to redirect_url after all messages are sent ([4d05602](https://github.com/Second-Live/karma-up/commit/4d05602c803a6645d6c0e9404a60ed380f0329ee)) * **client:** Revert back to old reloading detection ([f1c22d6](https://github.com/Second-Live/karma-up/commit/f1c22d66de8fe4109f903e8e3cfe4190baa36877)), closes [#1656](https://github.com/Second-Live/karma-up/issues/1656) * **client:** serialise DOM objects ([1f73be4](https://github.com/Second-Live/karma-up/commit/1f73be4f94415947b286dadd068920bd8fa2b142)), closes [#1106](https://github.com/Second-Live/karma-up/issues/1106) * **client:** show error if an adapter is removed ([a8b250c](https://github.com/Second-Live/karma-up/commit/a8b250cf6a89cf064f67ecb1e2c040cc224d91e9)) * **client:** Update location detection for socket.io ([7a23fa5](https://github.com/Second-Live/karma-up/commit/7a23fa571854fa6c1e7e7dc7fdfddeafa9759d58)) * **client:** Use supported shim path. ([184f12e](https://github.com/Second-Live/karma-up/commit/184f12e415fa970b3d14b70a41e2336d1fa73eb4)) * **client:** Wait for childwindow to load ([c1bb15a](https://github.com/Second-Live/karma-up/commit/c1bb15a2a48586165af4e08b737d0bfb9252dcdd)) * **client:** Wait for iframe to be loaded ([1631474](https://github.com/Second-Live/karma-up/commit/1631474e7484a89523eabdbc5eb98e431c286c2e)), closes [#1652](https://github.com/Second-Live/karma-up/issues/1652) * **cli:** override if an arg is defined multiple times ([31eb2c2](https://github.com/Second-Live/karma-up/commit/31eb2c2c3ca1663eff94f0398768a9b582332a93)), closes [#1192](https://github.com/Second-Live/karma-up/issues/1192) * **cli:** print UserAgent string verbatim if from an unknown browser ([9d97226](https://github.com/Second-Live/karma-up/commit/9d972263dd80920813500dd04c53b754cda81696)) * **cli:** restore command line help contents ([#3502](https://github.com/Second-Live/karma-up/issues/3502)) ([e99da31](https://github.com/Second-Live/karma-up/commit/e99da316a2d3f875f45baf4e985e521a2fcc755f)), closes [#3474](https://github.com/Second-Live/karma-up/issues/3474) * **cli:** restore shell completion in the npm package ([f56b5a5](https://github.com/Second-Live/karma-up/commit/f56b5a507623d98c299aafe3cc1fc0fb9c431010)), closes [#2351](https://github.com/Second-Live/karma-up/issues/2351) * **cli:** temporarily disable strict parameters validation ([#3641](https://github.com/Second-Live/karma-up/issues/3641)) ([9c755e0](https://github.com/Second-Live/karma-up/commit/9c755e0d61f1e8fb0fed1281fc8a331d5f1734be)), closes [#3625](https://github.com/Second-Live/karma-up/issues/3625) * **cli:** Use `bin` field in package.json ([6823926](https://github.com/Second-Live/karma-up/commit/6823926f0588f4a219705eb648fbb36a933a32d5)), closes [#1351](https://github.com/Second-Live/karma-up/issues/1351) * **commitlint:** skip task on master ([#3650](https://github.com/Second-Live/karma-up/issues/3650)) ([3fc6fda](https://github.com/Second-Live/karma-up/commit/3fc6fdadd6b0ed6838de048c15485b1bd815fe23)) * **common:** fix AppVeyor build ([6c5e7d0](https://github.com/Second-Live/karma-up/commit/6c5e7d00758f964a13473c44cd8370a07a6ad07d)) * **common:** more detailed info about error ([424aacc](https://github.com/Second-Live/karma-up/commit/424aacc4669697bd8032276cdac2339ccad1181b)) * **common:** Proxy function toString does not contain Proxy. ([4fb3484](https://github.com/Second-Live/karma-up/commit/4fb3484285d174ac23a1da4432af4de5a87928ba)) * **common:** stringify error on 'Cannot convert a Symbol value to a string' ([#2990](https://github.com/Second-Live/karma-up/issues/2990)) ([65b658a](https://github.com/Second-Live/karma-up/commit/65b658a8ba33831c1cf22e56bf484f42da232617)), closes [#2856](https://github.com/Second-Live/karma-up/issues/2856) * **completion:** add missin --log-level for karma init ([1e79eb5](https://github.com/Second-Live/karma-up/commit/1e79eb553e40530adef36b30b35a79f7a8026ddf)) * **config:** [#1113](https://github.com/Second-Live/karma-up/issues/1113) Watching is not working properly on linux ([c91ffbc](https://github.com/Second-Live/karma-up/commit/c91ffbc05f78f2c17dcc43039300cdf045e64ccc)) * **config:** add crossOriginAttribute config option ([1e465b1](https://github.com/Second-Live/karma-up/commit/1e465b1f473212c208a34b81ad56e1b454deb7f7)) * **config:** add test:unit npm script ([#3242](https://github.com/Second-Live/karma-up/issues/3242)) ([02f071d](https://github.com/Second-Live/karma-up/commit/02f071d5c9f55e853a5178f02b8dc58f0c3a103c)) * **config:** allow CoffeeScript 1.7 to be used ([a1583de](https://github.com/Second-Live/karma-up/commit/a1583decd97438a241f99287159da2948eb3a95f)) * **config:** allow parsing the config multiple times ([78a7094](https://github.com/Second-Live/karma-up/commit/78a7094e0f262c431e904f99cf356be53eee3510)) * **config:** apply CLI logger options as soon as we can ([16179b0](https://github.com/Second-Live/karma-up/commit/16179b08021334cfab02a9dcba8d7f4bd219bc5e)) * **config:** better errors if file invalid or does not exist ([74b533b](https://github.com/Second-Live/karma-up/commit/74b533beb34c115f5080d412a03573d269d540aa)) * **config:** Call debug log methods after setting the loglevel based upon config/cli-options. ([99fd3f0](https://github.com/Second-Live/karma-up/commit/99fd3f03a67d5141ceb3d44d1bf0bf6717a0255a)) * **config:** Call debug log methods after setting the loglevel based upon config/cli-options. ([a340dae](https://github.com/Second-Live/karma-up/commit/a340dae52cd1955ff6d6a6a3dd6799cb23bd8e32)) * **config:** check extension before ts-node register ([#3651](https://github.com/Second-Live/karma-up/issues/3651)) ([474f4e1](https://github.com/Second-Live/karma-up/commit/474f4e1caff469cce87f19a11d9179e4e05552f9)), closes [#3329](https://github.com/Second-Live/karma-up/issues/3329) * **config:** Check if configFilePath is a string. ([98724b6](https://github.com/Second-Live/karma-up/commit/98724b6ef5a6ba60d487e7b774056832c6ca9d8c)), closes [#447](https://github.com/Second-Live/karma-up/issues/447) * **config:** corrects spelling in example config template ([9fafc60](https://github.com/Second-Live/karma-up/commit/9fafc60f24d61f3072de35c89ec566db5ca21bff)) * **config:** Default remaining client options if any are set ([632dd5e](https://github.com/Second-Live/karma-up/commit/632dd5e329191bff0bc85d9bcf58657143315adc)), closes [#961](https://github.com/Second-Live/karma-up/issues/961) * **config:** do not change urlRoot even if proxied ([8c138b5](https://github.com/Second-Live/karma-up/commit/8c138b504046a3aeb230b71e1049aa60ee46905d)) * **config:** ensure basePath is always resolved ([2e5c5aa](https://github.com/Second-Live/karma-up/commit/2e5c5aaaddc4ad4e1ee9c8fa0388d3916827f403)) * **config:** Error when browers option isn't array ([b695460](https://github.com/Second-Live/karma-up/commit/b6954608a97c349c99205f25f9f677447a9a0b7a)) * **config:** fail if client.args is set to a non array ([fe4eaec](https://github.com/Second-Live/karma-up/commit/fe4eaec09f1b7d34270dec7f948cd9441ef6fe48)) * **config:** fix the warning when using old syntax ([5e55d79](https://github.com/Second-Live/karma-up/commit/5e55d797f7544a45c3042e301bbf71e8b830daf3)) * **config:** frameworks spelling ([9259740](https://github.com/Second-Live/karma-up/commit/9259740a81ef39a64656af800cee24091ce2d97e)) * **config:** ignore empty string patterns ([66c86a6](https://github.com/Second-Live/karma-up/commit/66c86a6689aaac82006fa47762bd86496ad76bf7)) * **config:** Log the final config just before use. ([#3041](https://github.com/Second-Live/karma-up/issues/3041)) ([05dd09a](https://github.com/Second-Live/karma-up/commit/05dd09a73232c31545d713b90dcaad260da00ff8)) * **config:** make the config changes backwards compatible ([593ad85](https://github.com/Second-Live/karma-up/commit/593ad853c330a7856f2112db2bfb288f67948fa6)) * **config:** move puppeteer from dependency to dev-dependency ([#3193](https://github.com/Second-Live/karma-up/issues/3193)) ([f0d52ad](https://github.com/Second-Live/karma-up/commit/f0d52ad6427c467b9482e3a80889bb3feccf053c)), closes [#3191](https://github.com/Second-Live/karma-up/issues/3191) * **config:** not append empty module if no custom launcher/rep/prep ([ee15a4e](https://github.com/Second-Live/karma-up/commit/ee15a4e446e9f35949a2fdde7cbdbecdd7ca0750)) * **config:** remove phantomjs in favor of chrome headless ([#3175](https://github.com/Second-Live/karma-up/issues/3175)) ([0f8b2b1](https://github.com/Second-Live/karma-up/commit/0f8b2b17e8fb4aab101ed9acfc65a3090b3298ca)) * **config:** Retry install with appveyor-retry. ([17d5791](https://github.com/Second-Live/karma-up/commit/17d57914b7b8d91ef3f8b3eb3f9a646a9e67fdd6)) * **config:** Separate ENOENT error handler from others ([e49dabe](https://github.com/Second-Live/karma-up/commit/e49dabe783d6cfb2ee97b70ac01953e82f70f831)) * **config:** Simpilfy error proceesing. ([#3345](https://github.com/Second-Live/karma-up/issues/3345)) ([582a406](https://github.com/Second-Live/karma-up/commit/582a406aa124a39ed57fc54673b73ca9cf808ae7)), closes [#3339](https://github.com/Second-Live/karma-up/issues/3339) * **config:** use polling by default ([53978c4](https://github.com/Second-Live/karma-up/commit/53978c42f10088fb29d09597817c5dde58aeb32b)) * **config:** wait 20s for browser activity. ([#3087](https://github.com/Second-Live/karma-up/issues/3087)) ([88b977f](https://github.com/Second-Live/karma-up/commit/88b977fcada5d08ae8d5bba9bc8eefc8404eff82)) * **config:** Wait 30s for browser activity per Travis. ([#3091](https://github.com/Second-Live/karma-up/issues/3091)) ([f6d2f0e](https://github.com/Second-Live/karma-up/commit/f6d2f0ea5a3323c5e359e26fe5be9fbf68db819f)) * **config:** Workaround npm 5.4 windows bug ([ec47d81](https://github.com/Second-Live/karma-up/commit/ec47d8115e48680cc8b9cf253bd92dbb4106e162)) * **context:** do not error when karma is navigating ([#3565](https://github.com/Second-Live/karma-up/issues/3565)) ([05dc288](https://github.com/Second-Live/karma-up/commit/05dc28801627e3ce7054ae548046714dc2cf7a5e)), closes [#3560](https://github.com/Second-Live/karma-up/issues/3560) * **context:** Updated postMessage listener to stop validating non-Karma messages ([306e565](https://github.com/Second-Live/karma-up/commit/306e5651c9ffdcc1a187b2d4c50cac654375f4db)) * **coverage:** always send a result object ([62c3c67](https://github.com/Second-Live/karma-up/commit/62c3c6790659f8f82f8a2ca5646aa424eeb28842)), closes [#365](https://github.com/Second-Live/karma-up/issues/365) * **cve:** update ua-parser-js to 0.7.23 to fix CVE-2020-7793 ([#3584](https://github.com/Second-Live/karma-up/issues/3584)) ([f819fa8](https://github.com/Second-Live/karma-up/commit/f819fa843fa0633edbe2af6ac2889e25ea2cb639)) * **cve:** update yargs to 16.1.1 to fix cve-2020-7774 in y18n ([#3578](https://github.com/Second-Live/karma-up/issues/3578)) ([3fed0bc](https://github.com/Second-Live/karma-up/commit/3fed0bc7dd042a09c8aec55c059654781a4584ec)), closes [#3577](https://github.com/Second-Live/karma-up/issues/3577) * **debug-runner:** support asynchronous tests in the debug runner ([a36f3eb](https://github.com/Second-Live/karma-up/commit/a36f3eb47408316686d1eeae4c54b6ca8edc54bd)), closes [#2811](https://github.com/Second-Live/karma-up/issues/2811) * **debug.html:** Added whitespace after 'SKIPPED' ([218ee85](https://github.com/Second-Live/karma-up/commit/218ee859d8c8f1c7d2f47435548030f367f1e05d)) * **dep:** Bump useragent to fix HeadlessChrome version ([#3201](https://github.com/Second-Live/karma-up/issues/3201)) ([240209f](https://github.com/Second-Live/karma-up/commit/240209f738df69a9e382e04d8c59f020b34c3267)), closes [#2762](https://github.com/Second-Live/karma-up/issues/2762) * **dependencies:** update and unlock socket.io dependency ([#3513](https://github.com/Second-Live/karma-up/issues/3513)) ([b60391f](https://github.com/Second-Live/karma-up/commit/b60391fbddcfa5f8c50b6ac6e3c8d8d845258a56)) * **dependencies:** update dependencies ([#3543](https://github.com/Second-Live/karma-up/issues/3543)) ([5db46b7](https://github.com/Second-Live/karma-up/commit/5db46b799b84a3d29157edfdbb8d0d0bc57f8fbc)) * **dependencies:** update production dependencies ([#3512](https://github.com/Second-Live/karma-up/issues/3512)) ([0cd696f](https://github.com/Second-Live/karma-up/commit/0cd696fe91f2616f6646ea5c67cc44b49d7e941a)) * **dependencies:** update to latest log4js major ([#3514](https://github.com/Second-Live/karma-up/issues/3514)) ([47f1cb2](https://github.com/Second-Live/karma-up/commit/47f1cb222ee0921defbe313b694da3288a894fec)) * **dependencies:** update to safe version of http-proxy ([#3519](https://github.com/Second-Live/karma-up/issues/3519)) ([00347bb](https://github.com/Second-Live/karma-up/commit/00347bb204c8c87e1096679af4634032d6600b67)), closes [#3510](https://github.com/Second-Live/karma-up/issues/3510) * **deps:** back to karma-browserstack-launcher 1.4 ([#3361](https://github.com/Second-Live/karma-up/issues/3361)) ([1cd87ad](https://github.com/Second-Live/karma-up/commit/1cd87ad04e11d6a79ba6f0a0bba42371be8e55bd)) * **deps:** bump log4js to resolve security issue ([5bf2df3](https://github.com/Second-Live/karma-up/commit/5bf2df304453c8f71ebc725653fd174ddb1dd28b)), closes [#3751](https://github.com/Second-Live/karma-up/issues/3751) * **deps:** bump socket-io to v3 ([#3586](https://github.com/Second-Live/karma-up/issues/3586)) ([1b9e1de](https://github.com/Second-Live/karma-up/commit/1b9e1de7d081e1c205debff27c6b5e1fe0585dee)), closes [#3569](https://github.com/Second-Live/karma-up/issues/3569) * **deps:** freeze socket.io version ([73e300d](https://github.com/Second-Live/karma-up/commit/73e300da116540a0b63b4f34a4f9dfb74606b0a7)) * **deps:** freeze useragent version ([a8c8530](https://github.com/Second-Live/karma-up/commit/a8c8530f0f8d8715a3e75bed1961a0c14d821d6b)) * **deps:** lodash update. ([#3341](https://github.com/Second-Live/karma-up/issues/3341)) ([5614c04](https://github.com/Second-Live/karma-up/commit/5614c040f2e84d74ec95227c23d634356fbf5b60)) * **deps:** pin colors package to 1.4.0 due to security vulnerability ([a5219c5](https://github.com/Second-Live/karma-up/commit/a5219c52e2515248eefae4fe1863ac8ad3fdd43b)) * **deps:** remove babel-core and babel call in wallaby. ([#3044](https://github.com/Second-Live/karma-up/issues/3044)) ([7da8ca0](https://github.com/Second-Live/karma-up/commit/7da8ca058b3868669e4e57ae614c1bea4de9e2fd)) * **deps:** update colors to maintained version ([#3763](https://github.com/Second-Live/karma-up/issues/3763)) ([fca1884](https://github.com/Second-Live/karma-up/commit/fca18843e7a04eeb67b86cb3cfc3db794d66f445)) * **deps:** Update dependencies ([b9a4ce9](https://github.com/Second-Live/karma-up/commit/b9a4ce989436b7213178becb37c635476c8c11a1)), closes [#1410](https://github.com/Second-Live/karma-up/issues/1410) * **deps:** Update log4js in package.json ([#2996](https://github.com/Second-Live/karma-up/issues/2996)) ([667b47e](https://github.com/Second-Live/karma-up/commit/667b47efbe42800189efc9ba697f07c2671a7845)) * **deps:** update socket.io to version 2.0.3. ([3b7b019](https://github.com/Second-Live/karma-up/commit/3b7b0196e407687b9c1704c34a70f59ebf03b6a2)), closes [#2821](https://github.com/Second-Live/karma-up/issues/2821) [#2777](https://github.com/Second-Live/karma-up/issues/2777) * **deps:** Upgrade connect 3. ([b490985](https://github.com/Second-Live/karma-up/commit/b490985c6e165ba978d3f80078a45b44e18728fc)), closes [#1410](https://github.com/Second-Live/karma-up/issues/1410) * **deps:** upgrade sinon-chai 2.x -> 3.x ([#3207](https://github.com/Second-Live/karma-up/issues/3207)) ([dc5f5de](https://github.com/Second-Live/karma-up/commit/dc5f5de537903087afbcfea3d550601f5b380f56)) * **deps:** upgrade socket.io to v4.4.1 ([52a30bb](https://github.com/Second-Live/karma-up/commit/52a30bbc6e168333a8592c26c9f40678d6ab74ea)) * detect a full page reload, show error and recover ([15d80f4](https://github.com/Second-Live/karma-up/commit/15d80f47a227839e9b0d54aeddf49b9aa9afe8aa)), closes [#27](https://github.com/Second-Live/karma-up/issues/27) * detect type for URLs with query parameter or fragment identifier ([#3509](https://github.com/Second-Live/karma-up/issues/3509)) ([f399063](https://github.com/Second-Live/karma-up/commit/f399063d1bc8954dba74166ea3dabef2fe376ae4)), closes [#3497](https://github.com/Second-Live/karma-up/issues/3497) * do not execute already executing browsers ([00136cf](https://github.com/Second-Live/karma-up/commit/00136cf6d818b9bc6e4d77504e3ce1ed3d23d611)) * **doc:** Document release steps for admins ([#3063](https://github.com/Second-Live/karma-up/issues/3063)) ([a701732](https://github.com/Second-Live/karma-up/commit/a70173273aed9774f078ce3d2f1071f760dfbbaa)) * **docs:** fix stopper.stop wrong variable name. closes [#2244](https://github.com/Second-Live/karma-up/issues/2244) ([0745a00](https://github.com/Second-Live/karma-up/commit/0745a008f934f646bf38eadbbe9c18cd48f45c98)) * **docs:** Remove mention of pre 1.0.0 version ([#3010](https://github.com/Second-Live/karma-up/issues/3010)) ([6847ca0](https://github.com/Second-Live/karma-up/commit/6847ca04df4eecfc413bb75807b0146ba0d157a5)) * **docs:** Update 03-how-it-works.md ([#3539](https://github.com/Second-Live/karma-up/issues/3539)) ([e7cf7b1](https://github.com/Second-Live/karma-up/commit/e7cf7b11ca3f70a6401c0499376f78984b18e1cc)) * don't crash/terminate upon errors within chokidar ([2c38931](https://github.com/Second-Live/karma-up/commit/2c389311ce683646675adccf5a7b7b3160335148)), closes [#959](https://github.com/Second-Live/karma-up/issues/959) * don't mark a browser captured if already being killed/timeouted ([2123097](https://github.com/Second-Live/karma-up/commit/212309795861cf599dbcc0ed60fff612ccf25cf5)), closes [#88](https://github.com/Second-Live/karma-up/issues/88) * ensure that Karma supports running tests on IE 11 ([#3642](https://github.com/Second-Live/karma-up/issues/3642)) ([dbd1943](https://github.com/Second-Live/karma-up/commit/dbd1943e6901c4cb86280db7663afde32f9ab86c)) * eslint rules ([afb466d](https://github.com/Second-Live/karma-up/commit/afb466dfd6c7f6a269dbf4eefd12ee548305880f)) * **eslint:** Fix formatting for the new ESLint 1.8.0 ([dc1bbab](https://github.com/Second-Live/karma-up/commit/dc1bbab071e70227ffaa6230846d86f93ec4b03c)) * **events:** bind emitters with for..in. ([#3059](https://github.com/Second-Live/karma-up/issues/3059)) ([b99f03f](https://github.com/Second-Live/karma-up/commit/b99f03fcb8242dd2fd1ac769642c41314679833b)), closes [#3057](https://github.com/Second-Live/karma-up/issues/3057) * **events:** resolve async events without any listener ([4e4bba8](https://github.com/Second-Live/karma-up/commit/4e4bba8803d1e4f461e568cc2e2ccf82e369721d)) * **executor:** ensure run_complete is emitted last ([9c894f9](https://github.com/Second-Live/karma-up/commit/9c894f9eab19945b2c4355874d63854eb1c8ede7)), closes [#2210](https://github.com/Second-Live/karma-up/issues/2210) * few typos ([c6a4271](https://github.com/Second-Live/karma-up/commit/c6a42710b40e81269f1e6c5d5bb55d01188a8872)) * **file_list:** follow symlinks ([ee26748](https://github.com/Second-Live/karma-up/commit/ee2674834bc9d0008e6c2b686f45c9b62e41e3c2)) * **file_list:** Incorrect response after remove and add file ([0dbc020](https://github.com/Second-Live/karma-up/commit/0dbc0201b2d1f7c909f74816cc50bc68013fc70f)) * **file-list:** always use file from first matcher ([74bfdf3](https://github.com/Second-Live/karma-up/commit/74bfdf3f41781e3d77a293b36565a71e879979f9)) * **file-list:** do not define fs.statAsync ([#3467](https://github.com/Second-Live/karma-up/issues/3467)) ([55a59e7](https://github.com/Second-Live/karma-up/commit/55a59e70017af79d6f3c170d87d808acc8e21faf)) * **file-list:** do not preprocess up-to-date files ([#3196](https://github.com/Second-Live/karma-up/issues/3196)) ([5334d1a](https://github.com/Second-Live/karma-up/commit/5334d1a86b46f3c106b5a86f0bee7e4a58c5e4ae)), closes [#2829](https://github.com/Second-Live/karma-up/issues/2829) * **file-list:** Ensure autowatchDelay is working. ([655599a](https://github.com/Second-Live/karma-up/commit/655599ad295b3d3aa58aaa1ebf8ee5aa7ea9059b)), closes [#1520](https://github.com/Second-Live/karma-up/issues/1520) * **file-list:** Ensure files are sorted and unique ([9dc5f8b](https://github.com/Second-Live/karma-up/commit/9dc5f8bc431a648ca0e03bc83fbefbf8d3a92c6f)), closes [#1498](https://github.com/Second-Live/karma-up/issues/1498) [#1499](https://github.com/Second-Live/karma-up/issues/1499) * **file-list:** ensure patterns are comparable ([4d1bf3e](https://github.com/Second-Live/karma-up/commit/4d1bf3e1fa998df5bd08ebfb99f0a5f69a8f023d)), closes [#2194](https://github.com/Second-Live/karma-up/issues/2194) * **file-list:** Normalize glob patterns ([fb841a7](https://github.com/Second-Live/karma-up/commit/fb841a799d83209a6e0d58722cf6239e4990b946)), closes [#1494](https://github.com/Second-Live/karma-up/issues/1494) * **file-list:** refresh resolves before 'file_list_modified' event ([65f1eca](https://github.com/Second-Live/karma-up/commit/65f1ecad58782cd832febafabc8e01019402bd33)), closes [#1550](https://github.com/Second-Live/karma-up/issues/1550) * **file-list:** revert "do not preprocess up-to-date files" ([#3226](https://github.com/Second-Live/karma-up/issues/3226)) ([#3230](https://github.com/Second-Live/karma-up/issues/3230)) ([bb022a7](https://github.com/Second-Live/karma-up/commit/bb022a7fa06042eb0d98ed72c75b74038128d9c0)) * **file-list:** Stop polluting global environment with core-js ([0988022](https://github.com/Second-Live/karma-up/commit/0988022f49e182fc642d6fa8daea1926225bb653)) * **file-list:** Use correct find function ([4cfaae9](https://github.com/Second-Live/karma-up/commit/4cfaae96d829957c8fcda9f51c44eb51ca4c4ab0)) * **file-list:** use lodash find() ([3bd15a7](https://github.com/Second-Live/karma-up/commit/3bd15a7fc467830af107baa3a4a5469cc5ac2daa)), closes [#1533](https://github.com/Second-Live/karma-up/issues/1533) * **file-list:** Use modified throttle instead of debounce ([cb2aafb](https://github.com/Second-Live/karma-up/commit/cb2aafb3588904b2636e90521179b476301b031c)), closes [#1545](https://github.com/Second-Live/karma-up/issues/1545) * **filelist:** correct logger name. ([#3262](https://github.com/Second-Live/karma-up/issues/3262)) ([375bb5e](https://github.com/Second-Live/karma-up/commit/375bb5e37c34535e222e019d0b11454f5a2b1593)) * **files:** Ignore included:false pattern ([db42a7f](https://github.com/Second-Live/karma-up/commit/db42a7fb1d37fa1196759b4f6b12e39f612fae5c)), closes [#1530](https://github.com/Second-Live/karma-up/issues/1530) * filter browser logging by level of LOG ([89a7a1c](https://github.com/Second-Live/karma-up/commit/89a7a1cce68246c620f9959ee31133bfa42be5dc)), closes [#2228](https://github.com/Second-Live/karma-up/issues/2228) * fix running tests in IE9 ([#3668](https://github.com/Second-Live/karma-up/issues/3668)) ([0055bc5](https://github.com/Second-Live/karma-up/commit/0055bc5cbf75597fa1601661bc4bec8cc701a49a)), closes [/github.com/karma-runner/karma/blob/026fff870913fb6cd2858dd962935dc74c92b725/client/main.js#L14](https://github.com//github.com/karma-runner/karma/blob/026fff870913fb6cd2858dd962935dc74c92b725/client/main.js/issues/L14) [#3665](https://github.com/Second-Live/karma-up/issues/3665) * **flaky-test:** Add time to beforeEach() to allow plugins to load on first pass. ([#3025](https://github.com/Second-Live/karma-up/issues/3025)) ([31d9a08](https://github.com/Second-Live/karma-up/commit/31d9a08892f51308efbe7c467c379b3f70f1e416)) * global error handler should propagate errors ([dec0c19](https://github.com/Second-Live/karma-up/commit/dec0c19651c251dcbc16c44a57775bcb37f78cf1)), closes [#368](https://github.com/Second-Live/karma-up/issues/368) * **helper:** Ensure browser detection is handled in the unkown case ([9328f67](https://github.com/Second-Live/karma-up/commit/9328f67e20e4874b6b7cc9b9551cdf4725ce0620)) * **helper:** make mkdirIfNotExists helper resilient to concurrent calls ([d9dade2](https://github.com/Second-Live/karma-up/commit/d9dade2f004a340e49c9a633177576200c286404)), closes [/github.com/karma-runner/karma-coverage/issues/434#issuecomment-1017939333](https://github.com//github.com/karma-runner/karma-coverage/issues/434/issues/issuecomment-1017939333) * **helper:** Patched replaceWinPath from choking on `null` values ([caa4d21](https://github.com/Second-Live/karma-up/commit/caa4d21abb1a59ffc7d06b663b5165eceda0360e)) * if preprocessor is async function and doesn't return a content then await donePromise ([#3387](https://github.com/Second-Live/karma-up/issues/3387)) ([f91be24](https://github.com/Second-Live/karma-up/commit/f91be246e7607ea628bdc33511366ee0ea539978)) * ignore jsVersion configuration property in Firefox 59+ ([2694d54](https://github.com/Second-Live/karma-up/commit/2694d549e3a1940144cb548d7ad9b1996a103f42)), closes [#2957](https://github.com/Second-Live/karma-up/issues/2957) * improve error msg when bin is a directory ([#3231](https://github.com/Second-Live/karma-up/issues/3231)) ([584dddc](https://github.com/Second-Live/karma-up/commit/584dddce0d43c7de33a68e161933167f5a4ca209)) * **init:** add "ChromeHeadless" to the browsers' options ([#3096](https://github.com/Second-Live/karma-up/issues/3096)) ([56fda53](https://github.com/Second-Live/karma-up/commit/56fda53ec19a1a691cd80342fef9b23d9f9fe4d2)) * **init:** add missing browsers (Opera, IE) ([f39e564](https://github.com/Second-Live/karma-up/commit/f39e5645ec561c2681d907f7c1611f01911ee8fd)) * **init:** clean the terminal if killed ([e2aa749](https://github.com/Second-Live/karma-up/commit/e2aa74972ce84388a49090533e353b61bd9b16ed)) * **init:** fix for failing "testacular init" on Windows ([0b5b385](https://github.com/Second-Live/karma-up/commit/0b5b385383f13ac8f29fa6e591a8634eefa04ab7)) * **init:** fix logger configuration ([557922d](https://github.com/Second-Live/karma-up/commit/557922d71941e0929f9cdc0d3794424a1f27b311)) * **init:** fix test-main.(js/coffee) generation ([d8521ef](https://github.com/Second-Live/karma-up/commit/d8521ef4adc0d2878a67f076d5d2042d8a05bd5f)), closes [#1120](https://github.com/Second-Live/karma-up/issues/1120) [#896](https://github.com/Second-Live/karma-up/issues/896) * **init:** fix the logger configuration ([481dc3f](https://github.com/Second-Live/karma-up/commit/481dc3fd75f45a0efa8aabdb1c71e8234b9e8a06)), closes [#340](https://github.com/Second-Live/karma-up/issues/340) * **init:** Fix type in init text ([e34465b](https://github.com/Second-Live/karma-up/commit/e34465b01cc583cac9645acc98d20acbf471c856)), closes [#954](https://github.com/Second-Live/karma-up/issues/954) * **init:** generate config with the new syntax ([6b27fee](https://github.com/Second-Live/karma-up/commit/6b27fee5a43a7d02e706355f62fe5105b4966c43)) * **init:** generate correct indentation ([5fc1795](https://github.com/Second-Live/karma-up/commit/5fc17957be761c06f6ae120c5d3ba800dba8d3a4)) * **init:** generate plugins and frameworks config ([17798d5](https://github.com/Second-Live/karma-up/commit/17798d55988d61070f2b9f59574217208f2b497e)) * **init:** install plugin as dev dependency ([46b7a40](https://github.com/Second-Live/karma-up/commit/46b7a402fb8d700b10e2d72908c309d27212b5a0)) * **init:** Make the requirejs config template normalize paths ([54dcce3](https://github.com/Second-Live/karma-up/commit/54dcce31ea59ba8a425ee656be8b507ffe7d8248)), closes [/github.com/karma-runner/karma/issues/513#issuecomment-48616784](https://github.com//github.com/karma-runner/karma/issues/513/issues/issuecomment-48616784) * **init:** set default filename ([34d49b1](https://github.com/Second-Live/karma-up/commit/34d49b138f3bee8f17e1e9e343012d82887f906b)), closes [#680](https://github.com/Second-Live/karma-up/issues/680) [#681](https://github.com/Second-Live/karma-up/issues/681) * **init:** Support ChromeHeadless in `validateBrowser` ([#3110](https://github.com/Second-Live/karma-up/issues/3110)) ([eeadcf2](https://github.com/Second-Live/karma-up/commit/eeadcf299d990c3569252b5c15a1088d3846e99d)) * **init:** to not give false warning about missing requirejs ([562607a](https://github.com/Second-Live/karma-up/commit/562607a16221b256c6e92ad2029154aac88eec8d)) * **init:** trim the inputs ([b72355c](https://github.com/Second-Live/karma-up/commit/b72355cbeadc8e907e48bbd7d9a11e6de17343f7)), closes [#663](https://github.com/Second-Live/karma-up/issues/663) * install semantic-release as a regular dev dependency ([#3455](https://github.com/Second-Live/karma-up/issues/3455)) ([1eaf35e](https://github.com/Second-Live/karma-up/commit/1eaf35e1d616a2ef21dd00d843552f189fbc7c94)) * invalid characters in the headers on Node 5.6.0 ([152337d](https://github.com/Second-Live/karma-up/commit/152337d991392faecb604d124b8546f4b55e9612)) * **karma:** Escape quotes for file names. This fixes issue [#1876](https://github.com/Second-Live/karma-up/issues/1876). ([9dff3f3](https://github.com/Second-Live/karma-up/commit/9dff3f302ce40117f299b24e3e494e5c90c596da)) * keep all sockets in the case an old socket will survive ([a5945eb](https://github.com/Second-Live/karma-up/commit/a5945ebcf11c4b17b99c40b78d7e2946f79c77c2)) * launcher kill method which was throwing an error if no callback was specified ([5439f1c](https://github.com/Second-Live/karma-up/commit/5439f1cbbdce9de0c2193171f75798587221e257)) * **launcher:** Allow dynamic browser launches ([2b7d703](https://github.com/Second-Live/karma-up/commit/2b7d703b083f6467dbb3b3c7933a1086cefb7cd3)) * **launcher:** better errors when loading launchers ([504e848](https://github.com/Second-Live/karma-up/commit/504e848cf66b065380fa72e07f5337ae2d6e35b5)) * **launcher:** cancel kill timeout when process exits cleanly ([bd66274](https://github.com/Second-Live/karma-up/commit/bd662744bfbe353ccb63c7a795f691d12530129c)), closes [#946](https://github.com/Second-Live/karma-up/issues/946) * **launcher:** compatibility with Node v0.8 ([6a46be9](https://github.com/Second-Live/karma-up/commit/6a46be96499876e9aa0892325d783627bd1c535d)) * **launcher:** compatibility with old launchers ([df557ce](https://github.com/Second-Live/karma-up/commit/df557cec8093de301a8d7dea4ddca8670629c0af)) * **launcher:** compatibility with old launchers ([ffb7480](https://github.com/Second-Live/karma-up/commit/ffb74800638417910f453e108c8a4c6ffabaee29)) * **launcher:** Continue with exit when SIGKILL fails ([1eaccb4](https://github.com/Second-Live/karma-up/commit/1eaccb4cef9c299bac50514fcaa990de2c0f803f)) * **launcher:** Debug Child Processes exit signal ([#3259](https://github.com/Second-Live/karma-up/issues/3259)) ([c277a6b](https://github.com/Second-Live/karma-up/commit/c277a6bd130531702e2529f0410aa441328f187e)) * **launcher:** exclude concurrent browser on launcher restart ([96f8f14](https://github.com/Second-Live/karma-up/commit/96f8f14c99312d6b2a959d0a7ae39ac85fc4d862)), closes [#2280](https://github.com/Second-Live/karma-up/issues/2280) * **launcher:** handle ENOENT error, do not retry ([7d790b2](https://github.com/Second-Live/karma-up/commit/7d790b29c09c1f3784fe648b7d5ed16add10b4ca)), closes [#452](https://github.com/Second-Live/karma-up/issues/452) * **launcher:** ignore exit code when killing/timeouting ([1029bf2](https://github.com/Second-Live/karma-up/commit/1029bf2d7d3d22986aa41439d2ce4115770f4dbd)), closes [#444](https://github.com/Second-Live/karma-up/issues/444) * **launcher:** Log state transitions in debug ([#3294](https://github.com/Second-Live/karma-up/issues/3294)) ([6556ab4](https://github.com/Second-Live/karma-up/commit/6556ab4e0523e6be9f89f80f9b2d075338841a0b)), closes [#3290](https://github.com/Second-Live/karma-up/issues/3290) * **launcher:** Only markCaptured browsers that are launched. ([#3047](https://github.com/Second-Live/karma-up/issues/3047)) ([f8f3ebc](https://github.com/Second-Live/karma-up/commit/f8f3ebc45751ffba6ec1aa1d1554c7dfe91de85b)) * **launcher:** send sigkill on timeout when force killing ([c615c1f](https://github.com/Second-Live/karma-up/commit/c615c1ff9523b7485fc9552b7e8dbad20f044920)) * **launchers:** Listen to the correct error event. ([45a6922](https://github.com/Second-Live/karma-up/commit/45a69221703bbd043cd71b8b0934c4be5339e111)) * **lint:** exempt built files ([#3024](https://github.com/Second-Live/karma-up/issues/3024)) ([bc9acd3](https://github.com/Second-Live/karma-up/commit/bc9acd355a09eafa76a48dbe03c7c88909285bc9)) * **logger:** configure the logger as soon as possible ([0607d67](https://github.com/Second-Live/karma-up/commit/0607d67c15eab58ce83cce14ada70a1e2a9f17e9)) * **logger:** create parent folders if they are missing ([0d24bd9](https://github.com/Second-Live/karma-up/commit/0d24bd937f7089d1456e2ecf04419d2c268c3144)), closes [#3734](https://github.com/Second-Live/karma-up/issues/3734) * **logging:** Summarize SKIPPED tests in debug.html. ([a01100f](https://github.com/Second-Live/karma-up/commit/a01100f5c6404366dd4219b9bf6c3161300dc735)), closes [#1111](https://github.com/Second-Live/karma-up/issues/1111) * **logging:** Upgrade to log4js 2.x API. ([#2868](https://github.com/Second-Live/karma-up/issues/2868)) ([f6f8707](https://github.com/Second-Live/karma-up/commit/f6f8707efaff1fafdf9329501675518ec41f6b82)), closes [#2858](https://github.com/Second-Live/karma-up/issues/2858) * **logging:** Util inspect for logging the config. ([#3332](https://github.com/Second-Live/karma-up/issues/3332)) ([70b72a9](https://github.com/Second-Live/karma-up/commit/70b72a91834c531adc259b8d88f9907ec8d0d13d)) * make window.parent.karma available in debugged context ([3e7eaeb](https://github.com/Second-Live/karma-up/commit/3e7eaebb5bafa9ff93ff2f2f14e70f54979f8afb)) * Merge config child nodes on config.set() ([65b688a](https://github.com/Second-Live/karma-up/commit/65b688a9f50c289254da8936e870d1e44fe12831)), closes [karma-runner/grunt-karma#165](https://github.com/karma-runner/grunt-karma/issues/165) [karma-runner/grunt-karma#166](https://github.com/karma-runner/grunt-karma/issues/166) * **middleware/runner:** handle file list rejections ([#3400](https://github.com/Second-Live/karma-up/issues/3400)) ([80febfb](https://github.com/Second-Live/karma-up/commit/80febfb53a7d041bdcbcffef617e53cdc2d8dd66)), closes [#3396](https://github.com/Second-Live/karma-up/issues/3396) [#3396](https://github.com/Second-Live/karma-up/issues/3396) * **middleware:** Actually serve the favicon. ([f12db63](https://github.com/Second-Live/karma-up/commit/f12db639c9fe8d3f3210cc5868ae150179a06d3a)) * **middleware:** add file type to absolute urls ([bd1f799](https://github.com/Second-Live/karma-up/commit/bd1f799fda6a6eec2c16318cb1d18488fbf680e2)) * **middleware:** avoid using deprecated Buffer API ([018e6be](https://github.com/Second-Live/karma-up/commit/018e6bec1775d4a6442e2554e510a989c8f0d3be)), closes [/nodejs.org/api/deprecations.html#deprecations_dep0005](https://github.com//nodejs.org/api/deprecations.html/issues/deprecations_dep0005) * **middleware:** catch errors when loading a module ([#3605](https://github.com/Second-Live/karma-up/issues/3605)) ([fec972f](https://github.com/Second-Live/karma-up/commit/fec972ff63760f9606a4cef7673a68c55c880722)), closes [#3572](https://github.com/Second-Live/karma-up/issues/3572) * **middleware:** change to use vanilla for loop ([ac62cc0](https://github.com/Second-Live/karma-up/commit/ac62cc0f7d8d85a91626d47c006cc70f1cfafe9e)), closes [#2671](https://github.com/Second-Live/karma-up/issues/2671) * **middleware:** Correct spelling of middleware logger name ([9e9e7e6](https://github.com/Second-Live/karma-up/commit/9e9e7e6d6099963fdb3e13b68570d5bef11e1a45)) * **middleware:** does not work with mootools ([#2591](https://github.com/Second-Live/karma-up/issues/2591)) ([2685e13](https://github.com/Second-Live/karma-up/commit/2685e1357f457757c3fa3f5d84a837ed9a51b646)) * **middleware:** ensure Range headers adhere more closely to RFC 2616 ([8b1b4b1](https://github.com/Second-Live/karma-up/commit/8b1b4b1052925e15770a0d4017a6ebc9ea89c0ed)), closes [#2310](https://github.com/Second-Live/karma-up/issues/2310) * **middleware:** fix WARN log when passing undefined error handler to promise.then ([20b87de](https://github.com/Second-Live/karma-up/commit/20b87de18854c19373b935c2cfa7ed5fa4e3ec87)), closes [#2227](https://github.com/Second-Live/karma-up/issues/2227) * **middleware:** Inject `config.urlRoot`. ([569ca0e](https://github.com/Second-Live/karma-up/commit/569ca0e56671ecffbd247268c0a943c6bfd61ea7)), closes [#1516](https://github.com/Second-Live/karma-up/issues/1516) * **middleware:** log invalid filetype ([#3292](https://github.com/Second-Live/karma-up/issues/3292)) ([7eb48c5](https://github.com/Second-Live/karma-up/commit/7eb48c53c9e591b2f886baacf40468988219c360)), closes [#3291](https://github.com/Second-Live/karma-up/issues/3291) * **middleware:** Obey the Promise API. ([93ba05a](https://github.com/Second-Live/karma-up/commit/93ba05ad476ed055e3355f7c4cc03eccd7874e74)) * **middleware:** replace %X_UA_COMPATIBLE% marker anywhere in the file ([f1aeaec](https://github.com/Second-Live/karma-up/commit/f1aeaec09e49856747b8f650d06b4dcc61eb637e)), closes [#3711](https://github.com/Second-Live/karma-up/issues/3711) * **middleware:** simplify stripHost. ([#3115](https://github.com/Second-Live/karma-up/issues/3115)) ([d65e911](https://github.com/Second-Live/karma-up/commit/d65e911c80f0ccb3d6dac5634c89d93ff45e9ca8)) * **middleware:** update `Buffer` usage ([3d94b8c](https://github.com/Second-Live/karma-up/commit/3d94b8cf18c695104ca195334dc75ff054c74eec)) * **package.json:** sinon-chai 2.13 is not compatible with sinon 4.x ([#2977](https://github.com/Second-Live/karma-up/issues/2977)) ([e095b05](https://github.com/Second-Live/karma-up/commit/e095b054b1da153c8557e4637012459eace35959)) * **package:** bump lodash version ([#3203](https://github.com/Second-Live/karma-up/issues/3203)) ([d38f344](https://github.com/Second-Live/karma-up/commit/d38f344dbca9696d88e0f055b2b4c7dd150708a7)), closes [#3177](https://github.com/Second-Live/karma-up/issues/3177) * pass integrity value ([63d86be](https://github.com/Second-Live/karma-up/commit/63d86befd3431fe8e1500e22f4f115a3762d000a)) * patch karma to allow loading virtual packages ([#3663](https://github.com/Second-Live/karma-up/issues/3663)) ([5bfcf5f](https://github.com/Second-Live/karma-up/commit/5bfcf5f37de6f0a12abcf9914c2fad510395b4d6)) * **plugins:** refactor instantiatePlugin from preproprocessor ([#3628](https://github.com/Second-Live/karma-up/issues/3628)) ([e02858a](https://github.com/Second-Live/karma-up/commit/e02858ae0d0de3f05add976b10e4b6b935cc3dd7)) * prefer IPv4 addresses when resolving domains ([e17698f](https://github.com/Second-Live/karma-up/commit/e17698f950af83bf2b3edc540d2a3e1fb73cba59)), closes [#3730](https://github.com/Second-Live/karma-up/issues/3730) * **preprocessor:** better errors when loading preprocessors ([3390a00](https://github.com/Second-Live/karma-up/commit/3390a00b49c513a6da60f48044462118436130f8)) * **preprocessor:** calculate sha1 on content returned from a preprocessor ([6cf7955](https://github.com/Second-Live/karma-up/commit/6cf795576bd6d77decac68ecc4838871b6df4836)), closes [#1204](https://github.com/Second-Live/karma-up/issues/1204) * **preprocessor:** consider SVG files as text files, not binary files ([ff28803](https://github.com/Second-Live/karma-up/commit/ff2880369f0c4e8b78d95bb20365cead340f8fc9)), closes [#1026](https://github.com/Second-Live/karma-up/issues/1026) * **preprocessor:** Directory names with dots ([4b5e094](https://github.com/Second-Live/karma-up/commit/4b5e09403680ca3bf15a6f92da7e03335cfaaad8)) * **preprocessor:** do not show duplicate warnings ([47c641f](https://github.com/Second-Live/karma-up/commit/47c641f7560d28e0d9eac7ae010566d296d5b628)) * **preprocessor:** Improve handling of failed preprocessors ([e726d1c](https://github.com/Second-Live/karma-up/commit/e726d1c4e177a54729f22d91f3d8a5dc04694781)), closes [#1521](https://github.com/Second-Live/karma-up/issues/1521) * **preprocessor:** Lookup patterns once invoked ([00a2781](https://github.com/Second-Live/karma-up/commit/00a278133964e70904f6e9bdec9a488a4902b28c)), closes [#1340](https://github.com/Second-Live/karma-up/issues/1340) * **preprocessor:** remove ts from binary extensions ([8269852](https://github.com/Second-Live/karma-up/commit/8269852304d2d420bb25a0e4bb13bba58a339f39)) * **preprocessor:** renamed handeFile to readFileCallback ([92a8c81](https://github.com/Second-Live/karma-up/commit/92a8c81fbed0cae423fbd84d3e64bc4086fd30af)) * **preprocessor:** resolve relative patterns to basePath ([c608a9e](https://github.com/Second-Live/karma-up/commit/c608a9e5a34a49da2971add8759a9422b74fa6fd)), closes [#382](https://github.com/Second-Live/karma-up/issues/382) * **preprocessor:** retry if fs.readFile fails ([4b60513](https://github.com/Second-Live/karma-up/commit/4b605137796f275f4aff3cd0481c78ca153aaf51)) * **preprocessor:** serve NaCl binaries ([1cc6a1e](https://github.com/Second-Live/karma-up/commit/1cc6a1e34b24768bffdaf47fb5e36559f5dc5135)) * **preprocessor:** Throw error if can't open file ([bb4edde](https://github.com/Second-Live/karma-up/commit/bb4edde9f15a07e6dac0d4dc01731f1e277d34a4)) * **preprocessor:** throw if retry fails ([2789bf5](https://github.com/Second-Live/karma-up/commit/2789bf57abd977def5caf22609eef74acbad292e)) * **preprocessor:** treat *.gz files as binary ([1b56932](https://github.com/Second-Live/karma-up/commit/1b56932fb49e0f3793f00599e11c24f6254236f4)) * **preprocessor:** treat *.swf files as binary ([62d7d38](https://github.com/Second-Live/karma-up/commit/62d7d3873ed3e046ab24530cb20297ddad51cf85)) * **preprocessor:** treat *.tgz, *.tbz2, *.txz & *.xz as binary ([7b64244](https://github.com/Second-Live/karma-up/commit/7b642449811b0c0af63147f74159c6dbb8900563)) * **preprocessor:** use graceful-fs to prevent EACCESS errors ([279bcab](https://github.com/Second-Live/karma-up/commit/279bcab54019a0f0af72c7c08017cf4cdefebe46)), closes [#566](https://github.com/Second-Live/karma-up/issues/566) * **preprocess:** set correct extension for the preprocessed path ([c9a64d2](https://github.com/Second-Live/karma-up/commit/c9a64d2f1a94c0a7dab2fcde79696c139d958c57)), closes [#843](https://github.com/Second-Live/karma-up/issues/843) * **proxy:** fix crashing proxy when browser hangs connection ([1c78a01](https://github.com/Second-Live/karma-up/commit/1c78a01a19411accb86f0bde9e040e5088752575)) * **proxy:** handle proxied socket.io websocket transport upgrade ([fcc2a98](https://github.com/Second-Live/karma-up/commit/fcc2a98f6af5f71a929130825b18db56557f29f7)) * **proxy:** More useful proxyError log message ([96640a7](https://github.com/Second-Live/karma-up/commit/96640a75dab089255c0619733ca9d5f9fe80127d)) * **proxy:** Pass protocol in target object to enable https requests ([142db90](https://github.com/Second-Live/karma-up/commit/142db90d33026710e92158e0e48abd7b30c5973e)) * **proxy:** Port mixup and infinite loop ([05616a2](https://github.com/Second-Live/karma-up/commit/05616a2f4ceca7e86f35a921ab26fe571db33cc9)), closes [#1987](https://github.com/Second-Live/karma-up/issues/1987) * **proxy:** proxy to correct port ([a483636](https://github.com/Second-Live/karma-up/commit/a483636efd440c13e6db36f6b661861558464089)) * remove broken link from docs - 06-angularjs.md ([#3555](https://github.com/Second-Live/karma-up/issues/3555)) ([da2f307](https://github.com/Second-Live/karma-up/commit/da2f307603dbdeb9b49e30ebdbbe9ce68ccc2e9e)) * remove circular reference in Browser ([518cb11](https://github.com/Second-Live/karma-up/commit/518cb118d8f90b2a64846a109a974b1b5873aabf)), closes [#3075](https://github.com/Second-Live/karma-up/issues/3075) * remove depreciation warning from log4js ([41bed33](https://github.com/Second-Live/karma-up/commit/41bed33bf4b88c7e0787ca3a5ec15f2913b936fd)) * Remove inadvertently added dependency to mock-fs ([ad5f6b5](https://github.com/Second-Live/karma-up/commit/ad5f6b55da5984caa9a5365a43cdd66d5ecd196f)) * remove string template from client code ([91d5acd](https://github.com/Second-Live/karma-up/commit/91d5acda6325caf91685da465d688527bd412b47)) * remove support of jsVersion configuration property ([#3002](https://github.com/Second-Live/karma-up/issues/3002)) ([2bb4e36](https://github.com/Second-Live/karma-up/commit/2bb4e3691cc79ea7d46096c6cf154e5f3acc82af)), closes [#2911](https://github.com/Second-Live/karma-up/issues/2911) * remove unused JSON utilities and flatted dependency ([#3550](https://github.com/Second-Live/karma-up/issues/3550)) ([beed255](https://github.com/Second-Live/karma-up/commit/beed255698c2efb3b7139f2145123829578345f6)) * remove vulnerable dependency combine-lists ([#3273](https://github.com/Second-Live/karma-up/issues/3273)) ([c43f584](https://github.com/Second-Live/karma-up/commit/c43f58427227e6a7fbaa95420a72ca9018839b87)), closes [#3265](https://github.com/Second-Live/karma-up/issues/3265) * remove vulnerable dependency expand-braces ([#3270](https://github.com/Second-Live/karma-up/issues/3270)) ([4ec4f6f](https://github.com/Second-Live/karma-up/commit/4ec4f6f26b175e3f759dfae9c1ba6a41654185da)), closes [#3268](https://github.com/Second-Live/karma-up/issues/3268) [#3269](https://github.com/Second-Live/karma-up/issues/3269) * report launcher process error when exit event is not emitted ([#3647](https://github.com/Second-Live/karma-up/issues/3647)) ([7ab86be](https://github.com/Second-Live/karma-up/commit/7ab86be25c334b07747632b0a6bdb1d650d881bc)) * **reporter.junit:** Add browser log output to JUnit.xml ([f108799](https://github.com/Second-Live/karma-up/commit/f108799a4d8fd95b8c0250ee83c23ada25d026b9)), closes [#302](https://github.com/Second-Live/karma-up/issues/302) * **reporter:** better errors when loading reporters ([c645c06](https://github.com/Second-Live/karma-up/commit/c645c060c4f381902c2005eefe5b3a7bfa63cdcc)) * **reporter:** Better handling of non string error ([82f1c12](https://github.com/Second-Live/karma-up/commit/82f1c1207b34955602b7590a34f8bf50b1a5ba6a)), closes [#1969](https://github.com/Second-Live/karma-up/issues/1969) [#1988](https://github.com/Second-Live/karma-up/issues/1988) * **reporter:** Disable source maps for URLs without line number ([2080221](https://github.com/Second-Live/karma-up/commit/2080221e6bac3ef6dbff0e4aab7784385034d227)), closes [#1274](https://github.com/Second-Live/karma-up/issues/1274) * **reporter:** do not allow URL domains to span new lines ([2c13404](https://github.com/Second-Live/karma-up/commit/2c1340437171778961ba333fd7ccd311c84377a8)) * **reporter:** Enable sourcemaps for errors that without column # ([086a542](https://github.com/Second-Live/karma-up/commit/086a5427142f161c288f3b7daccc0e43cd223ddd)) * **reporter:** Ensure errors use the source map. ([0407a22](https://github.com/Second-Live/karma-up/commit/0407a2280b01972ebcebe9ad341cff87c788975e)), closes [#1495](https://github.com/Second-Live/karma-up/issues/1495) * **reporter:** Fix issue causing error stack not to be parsed correctly ([ac4e1a9](https://github.com/Second-Live/karma-up/commit/ac4e1a9f01d671c71ccbf15a34c59e2be19da98a)), closes [#2930](https://github.com/Second-Live/karma-up/issues/2930) * **reporter:** format stack with 1-based column ([#3325](https://github.com/Second-Live/karma-up/issues/3325)) ([182c04d](https://github.com/Second-Live/karma-up/commit/182c04d4617ed173d9445e0d83581829ba704b65)), closes [#3324](https://github.com/Second-Live/karma-up/issues/3324) * **reporter:** inject correct config option ([80bd726](https://github.com/Second-Live/karma-up/commit/80bd726807cbc509fb73720df50366c54d779ba1)) * **reporter:** keep users exact formatError result ([17c2c43](https://github.com/Second-Live/karma-up/commit/17c2c43a7ce3f6346ddffdeb2b283f286e9e4bb8)) * **reporter:** preserve base/absolute word in error ([b3798df](https://github.com/Second-Live/karma-up/commit/b3798dfd77adbcb0a3ab05579a0d277d7178776f)) * **reporter:** prevent throwing exception when null is sent to formatter ([3b49c38](https://github.com/Second-Live/karma-up/commit/3b49c385fcc8ef96e72be390df058bd278b40c17)) * **reporter:** print browser stats immediately after it finishes ([65202d8](https://github.com/Second-Live/karma-up/commit/65202d870fa602e70483aeebbf87d0e11d6c1017)) * **reporter:** remove console.log ([b4e3694](https://github.com/Second-Live/karma-up/commit/b4e3694435de80c97976f1a368303528ab85f0d9)) * **reporter:** remove newline from base reporter browser dump ([dfae18b](https://github.com/Second-Live/karma-up/commit/dfae18b63b413a1e6240d00b9dc0521ac0386ec5)), closes [#297](https://github.com/Second-Live/karma-up/issues/297) * **reporter:** remove SHAs from stack traces ([d7c31f9](https://github.com/Second-Live/karma-up/commit/d7c31f97be654f08d484563282a68d59638c5693)) * **reporters:** cannot read property map of undefined ([305df2c](https://github.com/Second-Live/karma-up/commit/305df2cafd25421042a74bf076f6e24f58b75c6f)), closes [#1662](https://github.com/Second-Live/karma-up/issues/1662) * **reporters:** Fix results not being reported ([6303566](https://github.com/Second-Live/karma-up/commit/63035662cf3484b189270d3b4d15762331012577)) * **reporters:** format fix for console log ([d2d1377](https://github.com/Second-Live/karma-up/commit/d2d1377d1be0da17196a1c82bf5584997d502b68)), closes [#934](https://github.com/Second-Live/karma-up/issues/934) * **reporter:** show file path correctly when urlRoot specified ([34dc7d3](https://github.com/Second-Live/karma-up/commit/34dc7d3a7d3aac1adf88ff020ee910e59bed5aea)), closes [#2897](https://github.com/Second-Live/karma-up/issues/2897) * **reporter:** sourcemap not working in windows ([a9516af](https://github.com/Second-Live/karma-up/commit/a9516af2af87953154e81b6080214798a9b64da5)), closes [#1200](https://github.com/Second-Live/karma-up/issues/1200) * **reporters:** Revert the backwards-incompatible log priority order changes ([316b944](https://github.com/Second-Live/karma-up/commit/316b944d2ee7b1c9d011472dc41f149f92e88f26)), closes [#2582](https://github.com/Second-Live/karma-up/issues/2582) * **reporters:** Throwing error without loosing stack trace ([8a515ae](https://github.com/Second-Live/karma-up/commit/8a515ae43af0dfb95f56351d2888b3d648fdf93b)) * **reporter:** strip only hostname/port ([fbbeccf](https://github.com/Second-Live/karma-up/commit/fbbeccf936a08e5296ffbe41e02c82c4a014c80e)), closes [#2209](https://github.com/Second-Live/karma-up/issues/2209) * **reporter:** warning if stack trace contains generated code invocation ([4f23b14](https://github.com/Second-Live/karma-up/commit/4f23b14d3e774c0401f2c9eecb188b37aed020eb)) * restarted browsers not running tests ([#3233](https://github.com/Second-Live/karma-up/issues/3233)) ([cc2eff2](https://github.com/Second-Live/karma-up/commit/cc2eff27deb680f789afb34577fd337d2ad5dcac)) * restartOnFileChange option not restarting the test run ([92ffe60](https://github.com/Second-Live/karma-up/commit/92ffe6018451f6144e8bc7726d304057b5ac9d0a)), closes [#27](https://github.com/Second-Live/karma-up/issues/27) [#3724](https://github.com/Second-Live/karma-up/issues/3724) * restore `customFileHandlers` provider ([#3624](https://github.com/Second-Live/karma-up/issues/3624)) ([25d9abb](https://github.com/Second-Live/karma-up/commit/25d9abb76929b6ea8abe1cf040ba6db2f269d50e)) * restore backward compatibility for karma@0.13 ([648b357](https://github.com/Second-Live/karma-up/commit/648b357a0061b62448428eed379276836f92dbe5)) * reuse browser instance when restarting disconnected browser ([1f1a8eb](https://github.com/Second-Live/karma-up/commit/1f1a8ebf38827fe772c631de200fdfa4a705a40b)) * revert source-map update ([#3559](https://github.com/Second-Live/karma-up/issues/3559)) ([d9ba284](https://github.com/Second-Live/karma-up/commit/d9ba2849ced403a2ff2574d8e3a14deee21f1cc4)), closes [#3557](https://github.com/Second-Live/karma-up/issues/3557) * **runner:** do not confuse client args with the config file ([6f158ab](https://github.com/Second-Live/karma-up/commit/6f158abaf923dad6878a64da2d8a3c2c56ae604f)) * **runner:** Do not persist grep option across runs ([#3121](https://github.com/Second-Live/karma-up/issues/3121)) ([c91cb81](https://github.com/Second-Live/karma-up/commit/c91cb81e496c2e8c758304d77e7c3b7a7c29f073)) * **runner:** Fix typo in CSS class name for .idle ([fc5a7ce](https://github.com/Second-Live/karma-up/commit/fc5a7ce0904a78ece6a9cfa29215b17bd5c1929d)) * **runner:** Karma hangs when file paths have \u in them [#924](https://github.com/Second-Live/karma-up/issues/924) ([1199fc4](https://github.com/Second-Live/karma-up/commit/1199fc4d7ee7be2d48a707876ddb857544cf2fb4)) * **runner:** Make exit code configurable when tests are failing ([#3116](https://github.com/Second-Live/karma-up/issues/3116)) ([74da748](https://github.com/Second-Live/karma-up/commit/74da748908bde520a53c3cbc22dd891d7f2d170a)), closes [#1300](https://github.com/Second-Live/karma-up/issues/1300) * **runner:** Make process kill timeout configurable ([ffaa054](https://github.com/Second-Live/karma-up/commit/ffaa054a299a1abd68ab99769394b70ee5d08a19)), closes [#2447](https://github.com/Second-Live/karma-up/issues/2447) * **runner:** Make process kill timeout configurable - Fix Build ([a128e5c](https://github.com/Second-Live/karma-up/commit/a128e5cf64d744ae648a0885c4151c877cf5eff9)), closes [#2447](https://github.com/Second-Live/karma-up/issues/2447) * **runner:** Merge config.client.args with client.args provided by run ([91de383](https://github.com/Second-Live/karma-up/commit/91de383826d16add153292f38c0426ef7c44da17)), closes [#1746](https://github.com/Second-Live/karma-up/issues/1746) * **runner:** remove explicit error on all tests failed ([#3369](https://github.com/Second-Live/karma-up/issues/3369)) ([f8005c6](https://github.com/Second-Live/karma-up/commit/f8005c6307d530c703f3db266f31e40d55049fb6)), closes [#3367](https://github.com/Second-Live/…
Hi there,
This library is now recommended for code coverage when using v11 of the angular-cli. We are currently using karma-coverage-istanbul-reporter because we have yet to get successful coverage reports with karma-coverage. Seeing, however, that there are deprecation warnings when using the istanbul reporter library with the v11 angular-cli, we would very much like to move off it.
Perhaps someone here can help discern what is wrong with our configuration or point us in the right direction.
I will include the karma.config, and test output debug logs for two different projects.
The first project (PROJECT-1) is a bare project that was initialized with
ng new
command. It was updated to Angular 11 using theng update
command from angular-cli. The point of including this project is to serve as a 'control' for the second project.The second project (PROJECT-2) comes from a relatively large production codebase. In this codebase is roughly 5000 unit tests.
Important points
PROJECT-1 tests are run with:
ng test
.PROJECT-2 tests are run with:
node --max_old_space_size=8192 node_modules/@angular/cli/bin/ng test
.--max_old_space_size
configuration property mentioned about.Below is the karma config file shared by the two projects and the debug logs that are output when running tests.
Karma config
PROJECT-1-debug-output.txt
PROJECT-2-debug-output.txt
In the PROJECT-2 output you will see only ~20 tests ran. This is because I used an
fdescribe
to run a single test file so as to reduce the noise a little. The same result--no coverage--happens with or without this change.The point of failure seems to be here:
Thanks in advance for your support.
The text was updated successfully, but these errors were encountered: